@Singleton @Named public class ValueConverterToEnum extends AbstractSimpleValueConverter<Object,Enum>
ValueConverter
interface that converts an
Object
to an Enum
. It supports objects given as CharSequence
(e.g. String
) or
Number
as well as an Enum
having an value with the same name
.Modifier and Type | Field and Description |
---|---|
private StringUtil |
stringUtil |
Constructor and Description |
---|
ValueConverterToEnum()
The constructor.
|
Modifier and Type | Method and Description |
---|---|
<T extends Enum> |
convert(Object value,
Object valueSource,
Class<T> targetClass)
This method converts the given
pojo to the <TARGET>-type. |
protected void |
doInitialize()
This method performs the actual
initialization . |
Class<Object> |
getSourceType()
This the type of the value accepted by this converter.
|
protected StringUtil |
getStringUtil()
This method gets the
StringUtil to use. |
Class<Enum> |
getTargetType()
Is the guaranteed return-type of the
conversion . |
void |
setStringUtil(StringUtil stringUtil)
This method sets the
StringUtil to use. |
convert
createLogger, getLogger
doInitialized, getInitializationState, initialize
private StringUtil stringUtil
protected StringUtil getStringUtil()
StringUtil
to use.StringUtil
instance.public void setStringUtil(StringUtil stringUtil)
StringUtil
to use.stringUtil
- is the StringUtil
instance.protected void doInitialize()
AbstractComponent
initialization
. It is called when AbstractComponent.initialize()
is
invoked for the first time. super.
AbstractComponent.doInitialize()
.doInitialize
in class AbstractLoggableComponent
public Class<Object> getSourceType()
ValueConverter
Object
if you want to accept any
value. A very common source-type
is String
.public Class<Enum> getTargetType()
ValueConverter
conversion
. This
information is used externally to choose the most specific ValueConverter
that is
appropriate
for the conversion. Object
as target-type
while a specific
converter may have Collection
as target-type
. Now if an object
(compliant with the source-type
) needs to be converted to a
Collection
or List
, the specific converter is used while for other
objects the generic converter is chosen. target-type
is often more general than the actual
returned result
. So a ValueConverter
that converts
a comma-separated String
to an ArrayList
will typically declare
List
as target-type
.public <T extends Enum> T convert(Object value, Object valueSource, Class<T> targetClass)
ValueConverter
pojo
to the <TARGET>-type.T
- is the generic type of targetClass
.value
- is the value to convert.valueSource
- describes the source of the value. This may be the filename where the value was read
from, an XPath where the value was located in an XML document, etc. It is used in exceptions
thrown if something goes wrong. This will help to find the problem easier.targetClass
- is the type to convert the value
to.value
or null
if the conversion is NOT possible. The returned value
has to be an instance
of the given targetType
.ValueConverter.convert(Object, Object, GenericType)
Copyright © 2001–2016 mmm-Team. All rights reserved.