public class CodeFormatter
extends java.lang.Object
CodeFormatter
bean is used to format raw Java code. It
indents, word-wraps, and replaces tab characters with an amount of space
characters equal to the size of the indentationStep
property.
To create and use a CodeFormatter
, you simply instantiate a
new CodeFormatter
bean, and invoke
formatCode(Reader source, Writer target)
with appropriate
arguments.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEFAULT_DELIM
The default set of delimiters.
|
static int |
DEFAULT_MAX
The default maximum line length.
|
static java.lang.String |
DEFAULT_S_DELIM
The default set of sticky delimiters.
|
static int |
DEFAULT_STEP
The default size of the indentation step.
|
Constructor and Description |
---|
CodeFormatter() |
Modifier and Type | Method and Description |
---|---|
void |
formatCode(java.io.Reader source,
java.io.Writer target)
Formats the code read from
source , and writes the formatted
code to target . |
java.lang.String |
getDelimiters()
Gets the set of delimiters.
|
int |
getIndentationStep()
Gets the size of the indentation step.
|
int |
getMaxLineLength()
Gets the maximum line length.
|
java.lang.String |
getStickyDelimiters()
Gets the set of sticky delimiters.
|
void |
setDelimiters(java.lang.String newDelimiters)
Sets the set of delimiters; default set is
"(+" . |
void |
setIndentationStep(int newIndentationStep)
Sets the size of the indentation step; default size is
2 . |
void |
setMaxLineLength(int newMaxLineLength)
Sets the (desired) maximum line length; default length is
74 . |
void |
setStickyDelimiters(java.lang.String newStickyDelimiters)
Sets the set of sticky delimiters; default set is
"," . |
public static final int DEFAULT_MAX
public static final int DEFAULT_STEP
public static final java.lang.String DEFAULT_DELIM
public static final java.lang.String DEFAULT_S_DELIM
public void formatCode(java.io.Reader source, java.io.Writer target)
source
, and writes the formatted
code to target
.source
- where to read the unformatted code from.target
- where to write the formatted code to.public java.lang.String getDelimiters()
setDelimiters(java.lang.String)
public int getIndentationStep()
setIndentationStep(int)
public int getMaxLineLength()
setMaxLineLength(int)
public java.lang.String getStickyDelimiters()
setStickyDelimiters(java.lang.String)
public void setDelimiters(java.lang.String newDelimiters)
"(+"
.
Each character represents one delimiter. If a line is ready to be
word-wrapped and a delimiter is encountered, the delimiter will
appear as the first character on the following line.
A quotation mark, "
or '
, opening a string
is always a delimiter, whether you specify it or not.
newDelimiters
- the new set of delimiters.getDelimiters()
public void setIndentationStep(int newIndentationStep)
2
.
This is the number of spaces that lines will be indented (when appropriate).
newIndentationStep
- the new size of the indentation step.getIndentationStep()
public void setMaxLineLength(int newMaxLineLength)
74
.
If a token is longer than the requested maximum line length, then the line containing that token will obviously be longer than the desired maximum.
newMaxLineLength
- the new maximum line length.getMaxLineLength()
public void setStickyDelimiters(java.lang.String newStickyDelimiters)
","
.
Each character represents one sticky delimiter. If a line is ready
to be word-wrapped and a sticky delimiter is encountered, the sticky
delimiter will appear as the last character on the current line.
A quotation mark, "
or '
, closing a string
is always a sticky delimiter, whether you specify it or not.
newStickyDelimiters
- the new set of sticky delimiters.getStickyDelimiters()