org.teleal.cling.model.types
Class AbstractDatatype<V>
java.lang.Object
org.teleal.cling.model.types.AbstractDatatype<V>
- All Implemented Interfaces:
- Datatype<V>
- Direct Known Subclasses:
- Base64Datatype, BinHexDatatype, BooleanDatatype, CharacterDatatype, CustomDatatype, DateTimeDatatype, DoubleDatatype, FloatDatatype, IntegerDatatype, ShortDatatype, StringDatatype, UnsignedIntegerFourBytesDatatype, UnsignedIntegerOneByteDatatype, UnsignedIntegerTwoBytesDatatype, URIDatatype
public abstract class AbstractDatatype<V>
- extends Object
- implements Datatype<V>
- Author:
- Christian Bauer
AbstractDatatype
public AbstractDatatype()
getValueType
protected Class<V> getValueType()
isHandlingJavaType
public boolean isHandlingJavaType(Class type)
- Specified by:
isHandlingJavaType
in interface Datatype<V>
- Returns:
true
if this datatype can handle values of the given Java type.
valueOf
public V valueOf(String s)
throws InvalidValueException
- Description copied from interface:
Datatype
- Transforms a string representation into a value of the supported type.
- Specified by:
valueOf
in interface Datatype<V>
- Parameters:
s
- The string representation of a value.
- Returns:
- The converted value or
null
if the string was null
or empty.
- Throws:
InvalidValueException
- If the string couldn't be parsed.
getBuiltin
public Datatype.Builtin getBuiltin()
- Specified by:
getBuiltin
in interface Datatype<V>
- Returns:
- The built-in UPnP standardized type this datatype is mapped to or
null
if this is a custom datatype.
setBuiltin
public void setBuiltin(Datatype.Builtin builtin)
getString
public String getString(V value)
throws InvalidValueException
- Description copied from interface:
Datatype
- Transforms a value supported by this datatype into a string representation.
This method calls Datatype.isValid(Object)
before converting the value, it throws
an exception if validation fails.
- Specified by:
getString
in interface Datatype<V>
- Parameters:
value
- The value to transform.
- Returns:
- The transformed value as a string, or an empty string when the value is null, never returns
null
.
- Throws:
InvalidValueException
isValid
public boolean isValid(V value)
- Specified by:
isValid
in interface Datatype<V>
- Parameters:
value
- The value to validate or null
.
- Returns:
- Returns
true
if the value was null
, validation result otherwise.
toString
public String toString()
- Overrides:
toString
in class Object
getDisplayString
public String getDisplayString()
- Specified by:
getDisplayString
in interface Datatype<V>
- Returns:
- Metadata about this datatype, a nice string for display that describes
this datatype (e.g. concrete class name).
Copyright © 2011 Teleal GmbH, Switzerland. All Rights Reserved.