Package org.simpleframework.xml.core
Class FieldContact
java.lang.Object
org.simpleframework.xml.core.FieldContact
The
FieldContact
object is used to act as a contact
for a field within an object. This allows a value to be set on an
object field during deserialization and acquired from the same
field during serialization.- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Cache
<Annotation> This cache contains the annotations present on the field.private final Field
This represents the field within the schema class object.private final Annotation
This is the label that marks the field within the object.private final Annotation[]
This is the list of annotations associated with the field.private final int
This is the modifiers for the field that this represents.private final String
This is the name for this contact as taken from the field. -
Constructor Summary
ConstructorsConstructorDescriptionFieldContact
(Field field, Annotation label, Annotation[] list) Constructor for theFieldContact
object. -
Method Summary
Modifier and TypeMethodDescriptionThis is used to get the specified value on the provided object.This is the annotation associated with the point of contact.<T extends Annotation>
TgetAnnotation
(Class<T> type) This is the annotation associated with the point of contact.private <T extends Annotation>
TThis is the annotation associated with the point of contact.This is the class that declares the contact.This provides the dependent class for the contact.Class[]
This provides the dependent classes for the contact.getName()
This is used to acquire the name of the field.getType()
This will provide the contact type.boolean
isFinal()
This is used to identify annotated methods are fields that can not be modified.boolean
This is used to determine if the annotated contact is for a read only variable.boolean
isStatic()
This is used to determine if the annotated contact is for a static field or method.void
This is used to set the specified value on the provided object.toString()
This is used to describe the contact as it exists within the owning class.
-
Field Details
-
cache
This cache contains the annotations present on the field. -
list
This is the list of annotations associated with the field. -
label
This is the label that marks the field within the object. -
field
This represents the field within the schema class object. -
name
This is the name for this contact as taken from the field. -
modifier
private final int modifierThis is the modifiers for the field that this represents.
-
-
Constructor Details
-
FieldContact
Constructor for theFieldContact
object. This is used as a point of contact for a field within a schema class. Values can be read and written directly to the field with this.- Parameters:
field
- this is the field that is the point of contactlabel
- this is the annotation that is used by the fieldlist
- this is the list of annotations on the field
-
-
Method Details
-
isReadOnly
public boolean isReadOnly()This is used to determine if the annotated contact is for a read only variable. A read only variable is a field that can be set from within the constructor such as a blank final variable. It can also be a method with no set counterpart.- Specified by:
isReadOnly
in interfaceContact
- Returns:
- this returns true if the contact is a constant one
-
isStatic
public boolean isStatic()This is used to determine if the annotated contact is for a static field or method. A static field or method is one that contains the "static" keyword. Any static final fields will be read only and does not require any matching annotation.- Returns:
- this returns true if the contact is a static one
-
isFinal
public boolean isFinal()This is used to identify annotated methods are fields that can not be modified. Such field will require that there is a constructor that can have the value injected in to it.- Returns:
- this returns true if the field or method is final
-
getType
This will provide the contact type. The contact type is the class that is to be set and get on the object. This represents the return type for the get and the parameter for the set. -
getDependent
This provides the dependent class for the contact. This will actually represent a generic type for the actual type. For contacts that use aCollection
type this will be the generic type parameter for that collection.- Specified by:
getDependent
in interfaceContact
- Returns:
- this returns the dependent type for the contact
-
getDependents
This provides the dependent classes for the contact. This will typically represent a generic types for the actual type. For contacts that use aMap
type this will be the generic type parameter for that map type declaration.- Specified by:
getDependents
in interfaceContact
- Returns:
- this returns the dependent type for the contact
-
getDeclaringClass
This is the class that declares the contact. The declaring class is where the field represented been defined. This will typically be a class rather than an interface.- Specified by:
getDeclaringClass
in interfaceContact
- Returns:
- this returns the class the contact is declared within
-
getName
This is used to acquire the name of the field. This will return the name of the field which can then be used to determine the XML attribute or element the contact represents. This ensures that the name provided string is internalized for performance. -
getAnnotation
This is the annotation associated with the point of contact. This will be an XML annotation that describes how the contact should be serialized and deserialized from the object.- Specified by:
getAnnotation
in interfaceContact
- Returns:
- this provides the annotation associated with this
-
getAnnotation
This is the annotation associated with the point of contact. This will be an XML annotation that describes how the contact should be serialized and deserialized from the object.- Specified by:
getAnnotation
in interfaceType
- Parameters:
type
- this is the type of the annotation to acquire- Returns:
- this provides the annotation associated with this
-
getCache
This is the annotation associated with the point of contact. This will be an XML annotation that describes how the contact should be serialized and deserialized from the object.- Parameters:
type
- this is the type of the annotation to acquire- Returns:
- this provides the annotation associated with this
-
set
This is used to set the specified value on the provided object. The value provided must be an instance of the contact class so that it can be set without a runtime class compatibility error. -
get
This is used to get the specified value on the provided object. The value returned from this method will be an instance of the contact class type. If the returned object is of a different type then the serialization process will fail. -
toString
This is used to describe the contact as it exists within the owning class. It is used to provide error messages that can be used to debug issues that occur when processing a contact. The string provided is the generic field string.
-