|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectfc.util.ToString
public class ToString
Makes creating toString methods easier. (For example, provides ability to introspect and write field values). Idea inspired by a similar apache/jakarta utility.
Methods of the form append(String, type) imply the name specified by the string (typically a field name) is shown with value specified by type.
Example usage:
foo and bar are fields of this object.
Another example:public String toString() { return new ToString(this). append("foo","some-value"). append("bar",123). render(); }
Note: Don't forget the render() call at the end.public String toString() { return new ToString(this).reflect(). render(); }
The class only needs to be instantiated once so here's a more efficient approach:
{ //instance initializer ToString tostr = new ToString(this); } public String toString() { return tostr.reflect(). render(); }
Nested Class Summary | |
---|---|
static class |
ToString.Style
Drives the formatting behavior. |
Constructor Summary | |
---|---|
ToString(java.lang.Object obj)
Creates a ToString for the specified object, using the default ToString.Style . |
|
ToString(java.lang.Object obj,
ToString.Style.VisibleLevel level)
Creates a ToString for the specified object with the specified visibility level. |
|
ToString(java.lang.Object obj,
ToString.Style style)
Creates a ToString for the specified object using the specified style |
Method Summary | |
---|---|
ToString |
append(java.lang.Object str)
Appends an arbitrary string to the result. |
ToString |
append(java.lang.String fieldName,
boolean val)
|
ToString |
append(java.lang.String fieldName,
boolean[] val)
|
ToString |
append(java.lang.String fieldName,
byte val)
|
ToString |
append(java.lang.String fieldName,
byte[] val)
|
ToString |
append(java.lang.String fieldName,
char val)
|
ToString |
append(java.lang.String fieldName,
char[] val)
|
ToString |
append(java.lang.String fieldName,
double val)
|
ToString |
append(java.lang.String fieldName,
double[] val)
|
ToString |
append(java.lang.String fieldName,
float val)
|
ToString |
append(java.lang.String fieldName,
float[] val)
|
ToString |
append(java.lang.String fieldName,
int val)
|
ToString |
append(java.lang.String fieldName,
int[] val)
|
ToString |
append(java.lang.String fieldName,
long val)
|
ToString |
append(java.lang.String fieldName,
long[] val)
|
ToString |
append(java.lang.String fieldName,
java.lang.Object val)
|
ToString |
append(java.lang.String fieldName,
java.lang.Object[] val)
|
ToString |
append(java.lang.String fieldName,
short val)
|
ToString |
append(java.lang.String fieldName,
short[] val)
|
ToString |
append(java.lang.String fieldName,
java.lang.String val)
|
java.lang.StringBuffer |
getBuffer()
Returns the internal buffer used to create the string |
static ToString.Style |
getDefaultStyle()
Returns the default style object. |
ToString.Style |
getStyle()
Returns the style being currently used by this instance. |
static void |
main(java.lang.String[] args)
Unit test |
ToString |
reflect()
Uses reflection to get the contents of the object. |
java.lang.String |
render()
Renders the string |
static void |
setDefaultStyle(ToString.Style style)
Sets the style object to use as the default. |
java.lang.String |
toString()
Returns information about the current state of the ToString object itself. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public ToString(java.lang.Object obj)
ToString.Style
.
public ToString(java.lang.Object obj, ToString.Style style)
obj
- the target objectstyle
- the formatting stylepublic ToString(java.lang.Object obj, ToString.Style.VisibleLevel level)
obj
- the target objectstyle
- the formatting styleMethod Detail |
---|
public static ToString.Style getDefaultStyle()
public static void setDefaultStyle(ToString.Style style)
style
- the default stylepublic ToString.Style getStyle()
public java.lang.StringBuffer getBuffer()
public ToString reflect()
expandArray
is set to true. To print all array values, use the
append methods.
public java.lang.String render()
public java.lang.String toString()
render
method.
toString
in class java.lang.Object
public static void main(java.lang.String[] args)
public ToString append(java.lang.Object str)
public ToString append(java.lang.String fieldName, java.lang.Object val)
public ToString append(java.lang.String fieldName, java.lang.String val)
public ToString append(java.lang.String fieldName, long val)
public ToString append(java.lang.String fieldName, int val)
public ToString append(java.lang.String fieldName, short val)
public ToString append(java.lang.String fieldName, byte val)
public ToString append(java.lang.String fieldName, double val)
public ToString append(java.lang.String fieldName, float val)
public ToString append(java.lang.String fieldName, char val)
public ToString append(java.lang.String fieldName, boolean val)
public ToString append(java.lang.String fieldName, java.lang.Object[] val)
public ToString append(java.lang.String fieldName, long[] val)
public ToString append(java.lang.String fieldName, int[] val)
public ToString append(java.lang.String fieldName, short[] val)
public ToString append(java.lang.String fieldName, byte[] val)
public ToString append(java.lang.String fieldName, char[] val)
public ToString append(java.lang.String fieldName, double[] val)
public ToString append(java.lang.String fieldName, float[] val)
public ToString append(java.lang.String fieldName, boolean[] val)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |