|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.faces.convert.EnumConverter
public class EnumConverter
Converter
implementation for java.lang.Enum
(and enum primitive) values.
Field Summary | |
---|---|
static String |
CONVERTER_ID
The standard converter id for this converter. |
static String |
ENUM_ID
The message identifier of the FacesMessage to be created if
the conversion to Enum fails. |
static String |
ENUM_NO_CLASS_ID
The message identifier of the FacesMessage to be created if
the conversion to Enum fails and no target class has been
provided. |
Constructor Summary | |
---|---|
EnumConverter()
|
|
EnumConverter(Class targetClass)
|
Method Summary | |
---|---|
Object |
getAsObject(FacesContext context,
UIComponent component,
String value)
Convert the argument value to one of the enum
constants of the class provided in our constructor. |
String |
getAsString(FacesContext context,
UIComponent component,
Object value)
Convert the enum constant given by the value
argument into a String. |
boolean |
isTransient()
If true, the Object implementing this interface must not participate in state saving or restoring. |
void |
restoreState(FacesContext facesContext,
Object object)
Perform any processing required to restore the state from the entries in the state Object. |
Object |
saveState(FacesContext facesContext)
Gets the state of the instance as a Serializable Object. |
void |
setTransient(boolean b)
Denotes whether or not the Object implementing this interface must or must not participate in state saving or restoring. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String CONVERTER_ID
The standard converter id for this converter.
public static final String ENUM_ID
The message identifier of the FacesMessage
to be created if
the conversion to Enum
fails. The message format
string for this message may optionally include the following
placeholders:
{0}
replaced by the unconverted value.{1}
replaced by one of the enum constants or the empty
string if none can be found.{2}
replaced by a String
whose value
is the label of the input component that produced this message.
public static final String ENUM_NO_CLASS_ID
The message identifier of the FacesMessage
to be created if
the conversion to Enum
fails and no target class has been
provided. The message format
string for this message may optionally include the following
placeholders:
{0}
replaced by the unconverted value.{1}
replaced by a String
whose value
is the label of the input component that produced this message.
Constructor Detail |
---|
public EnumConverter()
public EnumConverter(Class targetClass)
Method Detail |
---|
public Object getAsObject(FacesContext context, UIComponent component, String value)
Convert the argument value
to one of the enum
constants of the class provided in our constructor. If a target
class argument has been provided to the constructor for this
instance, call its getEnumConstants()
method. For
each element in the list of constants, call
toString()
and compare the string with the argument
value
. If they are equal, return the current
element as the Object
value. If none of the
elements yield a match in this manner, or the length of the list
returned from getEnumConstants()
is zero,
throw a ConverterException
containing the ENUM_ID
message with proper parameters. If no target class
argument has been provided to the constructor of this instance,
throw a ConverterException
containing the ENUM_NO_CLASS_ID
message with proper parameters.
getAsObject
in interface Converter
context
- the FacesContext
for this request.component
- the UIComponent
to which this value
will be applied.value
- the String value
to be converted to
Object
.
null
if the value to convert is null
,
otherwise the result of the conversion
ConverterException
- if conversion cannot be successfully
performed
NullPointerException
- if context
or
component
is null
public String getAsString(FacesContext context, UIComponent component, Object value)
Convert the enum constant given by the value
argument into a String. If a target class argument has been
provided to the constructor for this instance, call its
getEnumConstants()
method. For each element in the
list of constants, test for equality between the current element
and the argument value
. If they are equal, call
toString()
on the current element and return it. If
none of the elements yield a match in this manner, or the length
of the list returned from getEnumConstants()
is
zero, simply call toString()
on the argument
value
and return it.
getAsString
in interface Converter
context
- FacesContext
for the request being processedcomponent
- UIComponent
with which this model object
value is associatedvalue
- Model object value to be converted
(may be null
)
null
,
otherwise the result of the conversion
ConverterException
- if conversion cannot be successfully
performed
NullPointerException
- if context
or
component
is null
public void restoreState(FacesContext facesContext, Object object)
StateHolder
Perform any processing required to restore the state from the entries in the state Object.
If the class that implements this interface has references to
instances that also implement StateHolder (such as a
UIComponent
with event handlers, validators, etc.)
this method must call the StateHolder.restoreState(javax.faces.context.FacesContext, java.lang.Object)
method on all those
instances as well.
restoreState
in interface StateHolder
public Object saveState(FacesContext facesContext)
StateHolder
Gets the state of the instance as a
Serializable
Object.
If the class that implements this interface has references to
instances that implement StateHolder (such as a
UIComponent
with event handlers, validators, etc.)
this method must call the StateHolder.saveState(javax.faces.context.FacesContext)
method on all those
instances as well. This method must not save the state
of children and facets. That is done via the StateManager
This method must not alter the state of the implementing object. In other words, after executing this code:
Object state = component.saveState(facesContext);
component
should be the same as before executing
it.
The return from this method must be Serializable
saveState
in interface StateHolder
public void setTransient(boolean b)
StateHolder
Denotes whether or not the Object implementing this interface must or must not participate in state saving or restoring.
setTransient
in interface StateHolder
b
- boolean pass true
if this Object
will participate in state saving or restoring, otherwise
pass false
.public boolean isTransient()
StateHolder
If true, the Object implementing this interface must not participate in state saving or restoring.
isTransient
in interface StateHolder
|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2006 Sun Microsystems, Inc. All rights reserved.