facets.util.datatree
Class ValueNode

java.lang.Object
  extended by facets.util.Tracer
      extended by facets.util.StatefulCore
          extended by facets.util.datatree.TypedNode<java.lang.String>
              extended by facets.util.datatree.DataNode
                  extended by facets.util.datatree.ValueNode
All Implemented Interfaces:
Identified, Stateful, Titled, java.io.Serializable

public class ValueNode
extends DataNode

DataNode whose values can be stored and retrieved using keys.

ValueNode adds to the functionality of its direct superclass, and thus indirectly to TypedNode, the capacity to store and retrieve a range of useful primitives and their arrays.

Values can be stored and retrieved as key pairs or by indexing into TypedNode.values().

See Also:
Serialized Form

Field Summary
static java.lang.String KEY_EQUALS
           
static java.lang.String KEY_TRUE
           
static int NO_INT
           
static long NO_LONG
           
 
Fields inherited from class facets.util.datatree.TypedNode
NULL_NODE, UNTITLED
 
Constructor Summary
ValueNode(java.lang.String type, java.lang.Object[] contents)
           
ValueNode(java.lang.String type, java.lang.String title)
           
ValueNode(java.lang.String type, java.lang.String title, java.lang.Object[] contents)
           
 
Method Summary
 Stateful copyState()
          Re-implementation that preserves instance type.
 void deleteValueAt(int pathAt)
           
 java.lang.String get(java.lang.String key)
          Returns stringification of value last stored under key.
 boolean getBoolean(int at)
           
 boolean getBoolean(java.lang.String key)
           
 double getDouble(int at)
           
 double getDouble(java.lang.String key)
           
 double[] getDoubles(int at)
           
 double[] getDoubles(java.lang.String key)
           
 int getInt(int at)
           
 int getInt(java.lang.String key)
           
 int[] getInts(java.lang.String key)
           
 long getLong(int at)
           
 long getLong(java.lang.String key)
           
 boolean getOrPutBoolean(java.lang.String key, boolean defaultPut)
           
 double getOrPutDouble(java.lang.String key, double defaultPut)
           
 int getOrPutInt(java.lang.String key, int defaultPut)
           
 long getOrPutLong(int at, long defaultPut)
           
 long getOrPutLong(java.lang.String key, long defaultPut)
           
 java.lang.String getOrPutString(java.lang.String key, java.lang.String defaultPut)
           
 java.lang.String getString(int at)
           
 java.lang.String getString(java.lang.String key)
           
 void put(java.lang.String key, boolean value)
           
 void put(java.lang.String key, double value)
           
 void put(java.lang.String key, int value)
           
 void put(java.lang.String key, long value)
           
 void put(java.lang.String key, java.lang.Object value)
          Stores value under key (appending to contents if not already present) as key concatenated with KEY_EQUALS and the stringification of value.
 void putAt(int at, java.lang.Object value)
           
 java.lang.String toString()
          Re-implementation wrapping Debug.info(Object).
protected  void traceOutput(java.lang.String msg)
          Outputs complete trace messages to console or elsewhere.
 
Methods inherited from class facets.util.datatree.DataNode
contents, setChildren, setContents, setState, setValues, stateEquals, valueString
 
Methods inherited from class facets.util.datatree.TypedNode
children, identity, parent, setParent, setValidType, type, values
 
Methods inherited from class facets.util.StatefulCore
setTitle, stateStamp, title, updateStateStamp
 
Methods inherited from class facets.util.Tracer
trace, trace, trace, trace, trace, traceDebug, traceDebug, traceObjectText, traceOutputWithClass
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

KEY_EQUALS

public static final java.lang.String KEY_EQUALS
See Also:
Constant Field Values

KEY_TRUE

public static final java.lang.String KEY_TRUE

NO_INT

public static final int NO_INT
See Also:
Constant Field Values

NO_LONG

public static final long NO_LONG
See Also:
Constant Field Values
Constructor Detail

ValueNode

public ValueNode(java.lang.String type,
                 java.lang.String title)

ValueNode

public ValueNode(java.lang.String type,
                 java.lang.String title,
                 java.lang.Object[] contents)

ValueNode

public ValueNode(java.lang.String type,
                 java.lang.Object[] contents)
Method Detail

copyState

public Stateful copyState()
Re-implementation that preserves instance type.

Specified by:
copyState in interface Stateful
Overrides:
copyState in class DataNode
Returns:
a new ValueNode created from the return of DataNode.copyState()

put

public final void put(java.lang.String key,
                      java.lang.Object value)
Stores value under key (appending to contents if not already present) as key concatenated with KEY_EQUALS and the stringification of value.

Parameters:
key - must be XML-compatible name
value - must be stringifiable by DataNode.valueString(Object)

get

public final java.lang.String get(java.lang.String key)
Returns stringification of value last stored under key.

Returns:
value stored or null.

getString

public final java.lang.String getString(int at)

getString

public final java.lang.String getString(java.lang.String key)

getOrPutString

public final java.lang.String getOrPutString(java.lang.String key,
                                             java.lang.String defaultPut)

getBoolean

public final boolean getBoolean(int at)

getBoolean

public final boolean getBoolean(java.lang.String key)

getOrPutBoolean

public final boolean getOrPutBoolean(java.lang.String key,
                                     boolean defaultPut)

put

public final void put(java.lang.String key,
                      boolean value)

getLong

public final long getLong(int at)

getLong

public final long getLong(java.lang.String key)

getOrPutLong

public final long getOrPutLong(int at,
                               long defaultPut)

getOrPutLong

public final long getOrPutLong(java.lang.String key,
                               long defaultPut)

put

public final void put(java.lang.String key,
                      long value)

getInt

public final int getInt(int at)

getInt

public final int getInt(java.lang.String key)

getOrPutInt

public final int getOrPutInt(java.lang.String key,
                             int defaultPut)

put

public final void put(java.lang.String key,
                      int value)

getDouble

public final double getDouble(int at)

getDouble

public final double getDouble(java.lang.String key)

getOrPutDouble

public final double getOrPutDouble(java.lang.String key,
                                   double defaultPut)

put

public final void put(java.lang.String key,
                      double value)

getInts

public final int[] getInts(java.lang.String key)

getDoubles

public final double[] getDoubles(java.lang.String key)

getDoubles

public final double[] getDoubles(int at)

deleteValueAt

public final void deleteValueAt(int pathAt)

putAt

public final void putAt(int at,
                        java.lang.Object value)

traceOutput

protected void traceOutput(java.lang.String msg)
Description copied from class: Tracer
Outputs complete trace messages to console or elsewhere.

Default prepends helpful classname to message.

Overrides:
traceOutput in class Tracer
Parameters:
msg - passed from one of the public methods

toString

public java.lang.String toString()
Description copied from class: StatefulCore
Re-implementation wrapping Debug.info(Object).

Overrides:
toString in class DataNode