public class Properties extends Type
Modifier and Type | Field and Description |
---|---|
static Properties |
SINGLETON
The only instance of this class.
|
Modifier | Constructor and Description |
---|---|
protected |
Properties(String name,
Type nameType,
Type valueType)
Constructs a new
Properties object (constructor for
subclasses). |
Modifier and Type | Method and Description |
---|---|
static Map<String,String> |
fromStringForOptional(String string)
Constructs a
PropertyReader from the specified string. |
static Map<String,String> |
fromStringForRequired(String string)
Constructs a
Map from the specified string
which is guaranteed to be non-null . |
protected Object |
fromStringImpl(String string)
Converts from a
String to an instance of the value class
for this type (implementation method). |
String |
getDescription()
Retrieves the description of this type.
|
protected boolean |
isValidValueImpl(String string)
Determines if the specified
String value is considered
valid for this type (implementation method). |
static String |
toString(Map<String,String> value)
Converts the specified
PropertyReader to a string. |
String |
toString(Object value)
Generates a string representation of the specified value for this type.
|
checkValue, fromString, getName, getValueClass, isValidValue, toString
public static final Properties SINGLETON
null
.public static Map<String,String> fromStringForRequired(String string) throws IllegalArgumentException, TypeValueException
Map
from the specified string
which is guaranteed to be non-null
.string
- the string to convert, cannot be null
.Map
object, never null
.IllegalArgumentException
- if string == null
.TypeValueException
- if the specified string does not represent a valid value for this
type.public static Map<String,String> fromStringForOptional(String string) throws TypeValueException
PropertyReader
from the specified string.string
- the string to convert, can be null
.PropertyReader
, or null
if
string == null
.TypeValueException
- if the specified string does not represent a valid value for this
type.public static String toString(Map<String,String> value)
PropertyReader
to a string.value
- the value to convert, can be null
.null
if and
only if value == null
.protected final boolean isValidValueImpl(String string)
Type
String
value is considered
valid for this type (implementation method).
This method is called from Type.isValidValue(String)
. When
called from that method, it is guaranteed that the argument is not
null
.
Type
returns
true
.isValidValueImpl
in class Type
string
- the String
value that should be checked for validity,
never null
.true
if and only if the specified String
value is valid, false
otherwise.protected final Object fromStringImpl(String string) throws TypeValueException
Type
String
to an instance of the value class
for this type (implementation method).
This method is not required to check the validity of the specified
value (since Type.isValidValueImpl(String)
should have been called
before) but if it does, then it may throw a TypeValueException
.
fromStringImpl
in class Type
string
- the string to convert to an instance of the value class, guaranteed
to be not null
and guaranteed to have been passed to
Type.isValidValueImpl(String)
without getting an exception.null
.TypeValueException
- if string
is considered to be an invalid value for this
type.public final String toString(Object value) throws IllegalArgumentException, ClassCastException, TypeValueException
Type
Type.getValueClass()
). Also, it may have to fall within a
certain range of valid values, depending on the type.
The default implementation of this method in class Type
does
the following:
value == null
then it throws an
IllegalArgumentException
;
getValueClass().isInstance(value) == false
then
it throws a ClassCastException
;
value.
Object.toString()
.
toString
in class Type
value
- the value, cannot be null
.null
.IllegalArgumentException
- if value == null
.ClassCastException
- if getValueClass().isInstance(value) == false
.TypeValueException
- if the specified value is not in the allowed range.public String getDescription()
Type
getDescription
in class Type
null
.See http://www.xins.org/.