org.teleal.cling.model.types
Class AbstractDatatype<V>

java.lang.Object
  extended by org.teleal.cling.model.types.AbstractDatatype<V>
All Implemented Interfaces:
Datatype<V>
Direct Known Subclasses:
Base64Datatype, BinHexDatatype, BooleanDatatype, CharacterDatatype, CustomDatatype, DateTimeDatatype, DoubleDatatype, FloatDatatype, IntegerDatatype, StringDatatype, TimeDatatype, UnsignedIntegerFourBytesDatatype, UnsignedIntegerOneByteDatatype, UnsignedIntegerTwoBytesDatatype, URIDatatype

public abstract class AbstractDatatype<V>
extends Object
implements Datatype<V>

Author:
Christian Bauer

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.teleal.cling.model.types.Datatype
Datatype.Builtin, Datatype.Default
 
Constructor Summary
AbstractDatatype()
           
 
Method Summary
 Datatype.Builtin getBuiltin()
           
 String getDisplayString()
           
 String getString(V value)
          Transforms a value supported by this datatype into a string representation.
protected  Class<V> getValueType()
           
 boolean isValid(V value)
           
 void setBuiltin(Datatype.Builtin builtin)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.teleal.cling.model.types.Datatype
valueOf
 

Constructor Detail

AbstractDatatype

public AbstractDatatype()
Method Detail

getValueType

protected Class<V> getValueType()

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 © 2010 Teleal GmbH, Switzerland. All Rights Reserved.