Class Parameter
- java.lang.Object
-
- ec.util.Parameter
-
- All Implemented Interfaces:
- java.io.Serializable
public class Parameter extends java.lang.Object implements java.io.SerializableA Parameter is an object which the ParameterDatabase class uses as a key to associate with strings, forming a key-value pair. Parameters are designed to be hierarchical in nature, consisting of "path items" separated by a path separator. Parameters are created either from a single path item, from an array of path items, or both. For example, a parameter with the path foo.bar.baz might be created from new Parameter(new String[] {"foo","bar","baz"})
Parameters are not mutable -- but once a parameter is created, path items may be pushed an popped from it, forming a new parameter. For example, if a parameter p consists of the path foo.bar.baz, p.pop() results in a new parameter whose path is foo.bar This pushing and popping isn't cheap, so be sparing.
Because this system internally uses "." as its path separator, you should not use that character in parts of the path that you provide; however if you need some other path separator, you can change the delimiter in the code trivially. In fact, you can create a new Parameter with a path foo.bar.baz simply by calling new Parameter("foo.bar.baz") but you'd better know what you're doing.
Additionally, parameters must not contain "#", "=", non-ascii values, or whitespace. Yes, a parameter path item may be empty.
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field and Description static chardelimiterjava.lang.Stringparam
-
Constructor Summary
Constructors Constructor and Description Parameter(java.lang.String s)Creates a new parameter from the single path item in s.Parameter(java.lang.String[] s)Creates a new parameter by joining the path items in s into a single path.Parameter(java.lang.String s, java.lang.String[] s2)Creates a new parameter from the path item in s, plus the path items in s2.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description Parameterpop()Returns a new parameter with one path item popped off the end.Parameterpopn(int n)Returns a new parameter with n path items popped off the end.Parameterpush(java.lang.String s)Returns a new parameter with s added to the end of the current path items.Parameterpush(java.lang.String[] s)Returns a new parameter with the path items in s added to the end of the current path items.java.lang.Stringtop()Returns the path item at the far end of the parameter.java.lang.StringtoString()
-
-
-
Field Detail
-
param
public java.lang.String param
-
delimiter
public static final char delimiter
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Parameter
public Parameter(java.lang.String[] s) throws BadParameterExceptionCreates a new parameter by joining the path items in s into a single path.- Throws:
BadParameterException
-
Parameter
public Parameter(java.lang.String s) throws BadParameterExceptionCreates a new parameter from the single path item in s.- Throws:
BadParameterException
-
Parameter
public Parameter(java.lang.String s, java.lang.String[] s2)Creates a new parameter from the path item in s, plus the path items in s2. s2 may be null or empty, but not s
-
-
Method Detail
-
push
public Parameter push(java.lang.String s)
Returns a new parameter with s added to the end of the current path items. If s is empty, nothing is pushed on (and no delimiter is added to the end).
-
push
public Parameter push(java.lang.String[] s)
Returns a new parameter with the path items in s added to the end of the current path items.
-
pop
public Parameter pop()
Returns a new parameter with one path item popped off the end. If this would result in a parameter with an empty collection of path items, null is returned.
-
popn
public Parameter popn(int n)
Returns a new parameter with n path items popped off the end. If this would result in a parameter with an empty collection of path items, null is returned.
-
top
public java.lang.String top()
Returns the path item at the far end of the parameter.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-
DMelt 3.0 © DataMelt by jWork.ORG