Class Block
- java.lang.Object
-
- org.glassfish.pfl.basic.tools.file.Block
-
public class Block extends java.lang.ObjectRepresents a range of Strings, typically read from a file, that are in some sense related and contiguous. Blocks may also be tagged as an aid in transforming a series of blocks.
-
-
Constructor Summary
Constructors Modifier Constructor Description Block(java.util.List<java.lang.String> data)Create a new Block from a list of strings.privateBlock(java.util.List<java.lang.String> data, java.util.Set<java.lang.String> tags)Block(Block block)Create a new Block which is a copy of block.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAfterLast(java.lang.String str)Add String after the end of the block.voidaddBeforeFirst(java.lang.String str)Add String before the start of the block.voidaddPrefixToAll(java.lang.String prefix)Add the prefix to each string in the block.voidaddTag(java.lang.String tag)Add a tag to the block.java.util.List<java.lang.String>contents()Get the contents of the block.booleanequals(java.lang.Object obj)BlockexpandTabs()Replace tabs with spaces, assuming tab stops are located as usual at n*8 + 1private java.lang.StringexpandTabs(java.lang.String src)java.lang.Stringfind(java.lang.String search)Return the first string in the block that contains the search string.inthashCode()booleanhasTag(java.lang.String tag)Return whether or not a block has a particular tag.booleanhasTags(java.lang.String... tags)Return whether or not a block has ALL of the listed tags.BlockinstantiateTemplate(java.util.Map<java.lang.String,java.lang.String> parameters)replace all occurrences of @KEY@ with parameters.get( KEY ).Pair<Block,Block>splitFirst()Split block into two blocks, with only the first line of the original Block in result.first().Blocksubstitute(java.util.List<? extends Pair<java.lang.String,java.lang.String>> substitutions)java.lang.StringtoString()voidwrite(FileWrapper fw)Write block to FileWrapper.
-
-
-
Constructor Detail
-
Block
private Block(java.util.List<java.lang.String> data, java.util.Set<java.lang.String> tags)
-
Block
public Block(java.util.List<java.lang.String> data)
Create a new Block from a list of strings.
-
Block
public Block(Block block)
Create a new Block which is a copy of block.
-
-
Method Detail
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
addTag
public void addTag(java.lang.String tag)
Add a tag to the block. Useful for classifying blocks.
-
hasTag
public boolean hasTag(java.lang.String tag)
Return whether or not a block has a particular tag.
-
hasTags
public boolean hasTags(java.lang.String... tags)
Return whether or not a block has ALL of the listed tags.
-
contents
public java.util.List<java.lang.String> contents()
Get the contents of the block.
-
addBeforeFirst
public void addBeforeFirst(java.lang.String str)
Add String before the start of the block.
-
addAfterLast
public void addAfterLast(java.lang.String str)
Add String after the end of the block.
-
addPrefixToAll
public void addPrefixToAll(java.lang.String prefix)
Add the prefix to each string in the block.
-
find
public java.lang.String find(java.lang.String search)
Return the first string in the block that contains the search string.
-
write
public void write(FileWrapper fw) throws java.io.IOException
Write block to FileWrapper. FileWrapper must be open for writing.- Throws:
java.io.IOException
-
instantiateTemplate
public Block instantiateTemplate(java.util.Map<java.lang.String,java.lang.String> parameters)
replace all occurrences of @KEY@ with parameters.get( KEY ). This is very simple: only one scan is made, so @...@ patterns in the parameters values are ignored.
-
expandTabs
private java.lang.String expandTabs(java.lang.String src)
-
expandTabs
public Block expandTabs()
Replace tabs with spaces, assuming tab stops are located as usual at n*8 + 1
-
substitute
public Block substitute(java.util.List<? extends Pair<java.lang.String,java.lang.String>> substitutions)
-
-