@Retention(value=RUNTIME)
public @interface ElementList
ElementList
annotation represents a method or
field that is a Collection
for storing elements. The
collection object deserialized is typically of the same type as
the field. However, a class
attribute can be used to
override the field type, however the type must be assignable.
<list class="java.util.ArrayList"> <element name="one"/> <element name="two"/> <element name="three"/> </list>If a
class
attribute is not provided and the type or
the field or method is abstract, a suitable match is searched for
from the collections available from the Java collections framework.
This annotation can also compose an inline list of XML elements.
An inline list contains no parent or containing element.
<element name="one"/> <element name="two"/> <element name="three"/>The above XML is an example of the output for an inline list of XML elements. In such a list the annotated field or method must not be given a name. Instead the name is acquired from the name of the entry type. For example if the
type
attribute of
this was set to an object example.Entry
then the name
of the element list would be taken as the root name of the object
as taken from the Root
annotation for that object.Modifier and Type | Optional Element and Description |
---|---|
boolean |
data
This is used to determine whether the element data is written
in a CDATA block or not.
|
boolean |
inline
Determines whether the element list is inlined with respect
to the parent XML element.
|
java.lang.String |
name
This represents the name of the XML element.
|
java.lang.String |
parent
This is used to provide a parent XML element for each of the
values within the array.
|
boolean |
required
Determines whether the element is required within the XML
document.
|
java.lang.Class |
type
Represents the type of object the element list contains.
|
public abstract java.lang.String name
public abstract java.lang.String parent
public abstract java.lang.Class type
class
attribute value for the list. If
this is not specified then the type can be determined from the
generic parameter of the annotated Collection
.public abstract boolean data
public abstract boolean required
public abstract boolean inline