java.lang.Object
org.refcodes.tabular.AbstractColumn<T>
org.refcodes.tabular.EnumColumn<T>
- All Implemented Interfaces:
Cloneable,org.refcodes.mixin.KeyAccessor<String>,org.refcodes.mixin.TypeAccessor<T>,Column<T>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.refcodes.mixin.KeyAccessor
org.refcodes.mixin.KeyAccessor.KeyBuilder<K extends Object,B extends org.refcodes.mixin.KeyAccessor.KeyBuilder<K, B>>, org.refcodes.mixin.KeyAccessor.KeyMutator<K extends Object>, org.refcodes.mixin.KeyAccessor.KeyProperty<K extends Object> Nested classes/interfaces inherited from interface org.refcodes.mixin.TypeAccessor
org.refcodes.mixin.TypeAccessor.TypeBuilder<T extends Object,B extends org.refcodes.mixin.TypeAccessor.TypeBuilder<T, B>>, org.refcodes.mixin.TypeAccessor.TypeMutator<T extends Object>, org.refcodes.mixin.TypeAccessor.TypeProperty<T extends Object> -
Constructor Summary
ConstructorsConstructorDescriptionEnumColumn(String aKey, Class<T> aType) Creates aEnumColumnmanagingDoubleinstances. -
Method Summary
Modifier and TypeMethodDescriptionclone()fromStorageStrings(String[] aStringValues) AColumnimplementation can provide its own text exchange format for the given objects.String[]toStorageStrings(T aValue) AColumnimplementation can provide its own text exchange format for the given objects.Methods inherited from class org.refcodes.tabular.AbstractColumn
contains, fromStorageString, get, getKey, getType, remove, toPrintable, toStorageStringMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.refcodes.tabular.Column
getValue, toStorageString_
-
Constructor Details
-
EnumColumn
Creates aEnumColumnmanagingDoubleinstances.- Parameters:
aKey- The key for theEnumColumn.aType- The enumeration's type.
-
-
Method Details
-
toStorageStrings
AColumnimplementation can provide its own text exchange format for the given objects. This method enables theColumnto convert a value of the given type to aStringarray and viaColumn.fromStorageStrings(String[])back to the value (bijective). This method supports data sinks (such as Amazon's SimpleDb) which provide dedicated support for multiple values in a row's entry: In case T is an array type, then the storageStringrepresentations of the elements in that array may be placed in dedicated entries of the returnedStringarray. In case T is not an array type then the returnedStringarray may contain just one value. In case data sinks (such as relational databases) are to be addressed which allow only a single value in a row's entry, then the methodColumn.toStorageString(Object)may be used instead. In case the enumeration implements theAliasAccessorinterface, then the according alias is the preferred storage string to be used. -
fromStorageStrings
AColumnimplementation can provide its own text exchange format for the given objects. This method enables theColumnto convert aStringarray value to a value of the given type and viaColumn.toStorageStrings(Object)back to theStringarray (bijective). This method supports data sinks (such as Amazon's SimpleDb) which provide dedicated support for multiple values in a row's entry: In case T is an array type, then the storageStringrepresentations of the elements in that array may be placed in dedicated entries of the providedStringarray. In case T is not an array type then the passedStringarray may contain just one value. In case data sinks (such as relational databases) are to be addressed which allow only a single value in a row's entry, then the methodColumn.fromStorageString(String)may be used instead. If possible, the enumeration's name is used for resolving the value. In case the enumeration implements theAliasAccessorinterface, then also the according alias is used for resolving the value. If both fails, the the storage string is interpreted as index pointing into the enumeration's values.- Parameters:
aStringValues- The value to be converted to a type instance.- Returns:
- The type representation of the value.
- Throws:
ParseException- in case parsing theStringwas not possible
-
clone
- Overrides:
clonein classAbstractColumn<T extends Enum<T>>- Throws:
CloneNotSupportedException
-