Class Property
java.lang.Object
org.eclipse.persistence.jaxb.compiler.Property
- All Implemented Interfaces:
Cloneable
INTERNAL:
Purpose:To store information about a property on a class during JAXB 2.0 Generation
Responsibilities:
- Store information about the java property such as property name, if it's a method or field, and it's type.
- Store some schema-specific information such as the schema name, the schema type, and mimeType
- Store some JAXB 2.0 Runtime specific information such as JAXB 2.0 Adapter classes
This class is used to store information about a property on a JAXB 2.0 annotated class. It is created by the AnnotationsProcessor during pre-processing and stored on a TypeInfo object
- See Also:
- Author:
- mmacivor
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
addReferencedElement
(ElementDeclaration element) Add an ElementDeclaration to the list of referenced elements.clone()
Return a shallow copy of this Property.Return the generic type if it was set (collection or array item type) otherwise return the type of this propertyReturn the generic type if it was set (collection or array item type) otherwise return the type of this propertyReturn the choice properties set on this property.Return the DomHandler class name.Returns the null policy for this property.Get the original type of the property.Return the list of referenced elements.getType()
Return the Map of user-defined properties.Return the List of XmlElementRef(s) for this Property.Return the XmlElements object set for this Property.Return the XmlElementWrapper set on this property.Return the xmlJavaTypeAdapter set on this Property.Return the XmlJoinNodes for this property.Return the list of XmlJoinNodes for this Property, if any.Return the xpath for this property.Return the XmlTransformation set on this property.boolean
isAny()
Returns indicator for XmlAnyElementboolean
boolean
boolean
isCdata()
boolean
isChoice()
Indicates if this property represents a choice property.boolean
Indicates if XOP encoding should be disabled for datatypes that are bound to base64-encoded binary data in XML.boolean
boolean
isLax()
Used with XmlAnyElement.boolean
isMap()
boolean
boolean
boolean
boolean
boolean
boolean
Indicates if this property is mapped by position, i.e.boolean
Indicates if the mapping for this Property is read-only.boolean
Indicates if this Property is a reference property.boolean
boolean
Indicates if the isCdata flag was set via external metadata.boolean
boolean
Indicates if a null policy is set for this property.boolean
Indicates if the isReadOnly flag was set via external metadata.boolean
Indicates if a map of userProperties is set for this property.boolean
Indicates if the isWriteOnly flag was set via external metadata.boolean
Indicates if an XmlElementWrapper has been set, i.e.boolean
Indicates if an XmlJavaTypeAdapter has been set, i.e.boolean
Indicates if this property has XmlJoinNodes set.boolean
Indicates if xmlJoinNodesList has been set, i.e.boolean
Indicates if an xpath is set for this property.boolean
Indicates if an XmlTransformation is set for this porperty.boolean
boolean
boolean
boolean
boolean
isTyped()
boolean
boolean
boolean
boolean
boolean
boolean
isXmlId()
Indicates if this property is an ID field.boolean
Indicates if this property is an ID extension field.boolean
Indicates if this property is a reference to an ID field.boolean
Indicates if this property is an XmlList.boolean
boolean
Indicates if this property represents an XmlTransformation.boolean
Indicates if this property is an XmlValue.boolean
Indicates if this property is an XmlValueExtension.void
setAdapterClass
(JavaClass adapterCls) Set an XmlAdapter on this Property.void
setCdata
(boolean isCdata) Flag the mapping for this Property as containing character data.void
setChoice
(boolean choice) Set flag to indicate whether this property represents a choice property.void
setChoiceProperties
(Collection<Property> properties) Set the choice properties for this property.void
setDefaultValue
(String defaultValue) void
setDomHandlerClassName
(String domHandlerClassName) Set the DomHandler class name.void
setElement
(JavaHasAnnotations element) void
setExtension
(boolean value) void
setFixedValue
(String fixedValue) void
setGenericType
(JavaClass genericType) void
setGetMethodName
(String methodName) void
setHasXmlElementType
(boolean hasXmlElementType) void
void
setInverseReference
(boolean isInverseReference, boolean isWriteable) void
void
setInverseReferencePropertyGetMethodName
(String methodName) void
void
setInverseReferencePropertySetMethodName
(String methodName) void
setIsAny
(boolean isAnyElement) Set indicator for XmlAnyElement.void
setIsAnyAttribute
(boolean anyAtribute) void
setIsAttribute
(boolean attribute) void
setisInlineBinaryData
(boolean b) Sets the flag that indicates if XOP encoding should be disabled for datatypes that are bound to base64-encoded binary data in XML.void
setIsMtomAttachment
(boolean b) void
setIsReference
(boolean isReference) Set flag to indicate whether this property represents a reference property.void
setIsRequired
(boolean b) void
setIsSuperClassProperty
(boolean b) void
setIsSwaAttachmentRef
(boolean b) void
setIsXmlId
(boolean isXmlId) Sets the indicator that identifies this property as an ID field.void
setIsXmlIdExtension
(boolean isXmlIdExtension) Sets the indicator that identifies this property as an ID extension field.void
setIsXmlIdRef
(boolean isXmlIdRef) Sets the indicator that identifies this property as a reference to an ID field.void
setIsXmlList
(boolean isXmlList) Set the isXmlList property.void
setIsXmlTransformation
(boolean isXmlTransformation) Set flag that indicates if this property represents an XmlTransformation.void
setIsXmlValue
(boolean isXmlValue) Set the isXmlValue property.void
setIsXmlValueExtension
(boolean isXmlValueExtension) Set the isXmlValueExtension property.void
setKeyType
(JavaClass keyType) void
setLax
(boolean b) Used with XmlAnyElement.void
setMaxOccurs
(int maxOccurs) void
setMethodProperty
(boolean isMethod) void
setMimeType
(String mType) void
setMinOccurs
(int minOccurs) void
setMixedContent
(boolean b) void
setNillable
(boolean isNillable) void
setNotNullAnnotated
(boolean notNullAnnotated) void
setNullPolicy
(XmlAbstractNullPolicy nullPolicy) Set the null policy for this property.void
setOriginalGetMethodName
(String methodName) void
setOriginalSetMethodName
(String methodName) void
setOriginalType
(JavaClass type) Set the original type of the property.void
setPropertyName
(String propertyName) void
setReadOnly
(boolean isReadOnly) Flag the mapping for this Property as read-only.void
setSchemaName
(QName schemaName) void
setSchemaType
(QName type) void
setSetMethodName
(String methodName) void
setTransient
(boolean isTransient) void
setTransientType
(boolean isTransientType) void
void
setTyped
(boolean isTyped) void
setUserProperties
(Map<Object, Object> userProperties) Set the Map of user-defined properties.void
setValueGenericType
(JavaClass valueGenericType) void
setValueType
(JavaClass valueType) void
setVariableAttributeName
(String variableAttributeName) void
setVariableClassName
(String variableClassName) void
setVariableNodeAttribute
(boolean variableNodeAttribute) void
setWriteOnly
(boolean isWriteOnly) Flag the mapping for this Property as write-only.void
setXmlElementRefs
(List<XmlElementRef> xmlElementRefs) Set the List of XmlElementRef(s) for this Property.void
setXmlElements
(XmlElements xmlElements) Set the XmlElements object for this Property.void
setXmlElementWrapper
(XmlElementWrapper xmlElementWrapper) Set the XmlElementWrapper for this property.void
setXmlJavaTypeAdapter
(XmlJavaTypeAdapter xmlJavaTypeAdapter) Set an XmlJavaTypeAdapter on this Property.void
setXmlJoinNodes
(XmlJoinNodes xmlJoinNodes) Set XmlJoinNodes for this property.void
setXmlJoinNodesList
(List<XmlJoinNodes> xmlJoinNodesList) Set the list of XmlJoinNodes for this Property.void
setXmlLocation
(boolean isXmlLocation) void
setXmlPath
(String xmlPath) Set the xpath for this property.void
setXmlTransformation
(XmlTransformation xmlTransformation) Set the XmlTransformation for this property.boolean
Indicates if nillable='true' should be set on a given schema component.
-
Field Details
-
DEFAULT_KEY_NAME
- See Also:
-
DEFAULT_VALUE_NAME
- See Also:
-
-
Constructor Details
-
Property
public Property() -
Property
-
-
Method Details
-
setHelper
-
setAdapterClass
Set an XmlAdapter on this Property. The type, generic type and original type will be set as required based on the XmlAdapter's marshal method return type and input parameters.- Parameters:
adapterCls
-
-
getElement
-
setElement
-
getPropertyName
-
setPropertyName
-
getSchemaName
-
setSchemaName
-
isMethodProperty
public boolean isMethodProperty() -
setMethodProperty
public void setMethodProperty(boolean isMethod) -
setType
-
getType
-
getGenericType
-
setGenericType
-
getSchemaType
-
setSchemaType
-
isSwaAttachmentRef
public boolean isSwaAttachmentRef() -
setIsSwaAttachmentRef
public void setIsSwaAttachmentRef(boolean b) -
isMtomAttachment
public boolean isMtomAttachment() -
setIsMtomAttachment
public void setIsMtomAttachment(boolean b) -
isInlineBinaryData
public boolean isInlineBinaryData()Indicates if XOP encoding should be disabled for datatypes that are bound to base64-encoded binary data in XML.- Returns:
- true if XOP encoding should be disabled for datatypes that are bound to base64-encoded binary data in XML; false if not
-
setisInlineBinaryData
public void setisInlineBinaryData(boolean b) Sets the flag that indicates if XOP encoding should be disabled for datatypes that are bound to base64-encoded binary data in XML.- Parameters:
b
- if true, XOP encoding will be disabled for datatypes that are bound to base64-encoded binary data in XML.
-
isRequired
public boolean isRequired() -
isTransientType
public boolean isTransientType() -
setTransientType
public void setTransientType(boolean isTransientType) -
setIsRequired
public void setIsRequired(boolean b) -
getMimeType
-
setMimeType
-
isAttribute
public boolean isAttribute() -
isAnyAttribute
public boolean isAnyAttribute() -
setIsAttribute
public void setIsAttribute(boolean attribute) -
setIsAnyAttribute
public void setIsAnyAttribute(boolean anyAtribute) -
getGetMethodName
-
setGetMethodName
-
getSetMethodName
-
setSetMethodName
-
getOriginalGetMethodName
-
setOriginalGetMethodName
-
getOriginalSetMethodName
-
setOriginalSetMethodName
-
isChoice
public boolean isChoice()Indicates if this property represents a choice property.- Returns:
-
setChoice
public void setChoice(boolean choice) Set flag to indicate whether this property represents a choice property.- Parameters:
choice
-
-
isAny
public boolean isAny()Returns indicator for XmlAnyElement- Returns:
-
setIsAny
public void setIsAny(boolean isAnyElement) Set indicator for XmlAnyElement.- Parameters:
isAnyElement
-
-
isReference
public boolean isReference()Indicates if this Property is a reference property.- Returns:
-
setIsReference
public void setIsReference(boolean isReference) Set flag to indicate whether this property represents a reference property.- Parameters:
isReference
-
-
isNillable
public boolean isNillable() -
setNillable
public void setNillable(boolean isNillable) -
isTransient
public boolean isTransient() -
setTransient
public void setTransient(boolean isTransient) -
setDefaultValue
- Parameters:
defaultValue
- the defaultValue to set
-
getDefaultValue
- Returns:
- the defaultValue
-
isSetDefaultValue
public boolean isSetDefaultValue()- Returns:
- the isSetDefaultValue
-
isMixedContent
public boolean isMixedContent() -
setMixedContent
public void setMixedContent(boolean b) -
setHasXmlElementType
public void setHasXmlElementType(boolean hasXmlElementType) -
isXmlElementType
public boolean isXmlElementType() -
getActualType
Return the generic type if it was set (collection or array item type) otherwise return the type of this property- Returns:
-
getOriginalType
Get the original type of the property. This is typically used when the type has been changed via @XmlElement annotation and the original type is desired.- Returns:
-
setOriginalType
Set the original type of the property. This is typically used when the type will been changed via @XmlElement annotation and the original type may be needed. -
isSetXmlJavaTypeAdapter
public boolean isSetXmlJavaTypeAdapter()Indicates if an XmlJavaTypeAdapter has been set, i.e. the xmlJavaTypeAdapter property is non-null.- Returns:
- true if xmlJavaTypeAdapter is non-null, false otherwise
- See Also:
-
getXmlJavaTypeAdapter
Return the xmlJavaTypeAdapter set on this Property.- Returns:
- xmlJavaTypeAdapter, or null if not set
- See Also:
-
setXmlJavaTypeAdapter
Set an XmlJavaTypeAdapter on this Property. This call sets the adapterClass property to the given adapter's value.- Parameters:
xmlJavaTypeAdapter
-- See Also:
-
isSetXmlElementWrapper
public boolean isSetXmlElementWrapper()Indicates if an XmlElementWrapper has been set, i.e. the xmlElementWrapper property is non-null.- Returns:
- true if xmlElementWrapper is non-null, false otherwise
-
getXmlElementWrapper
Return the XmlElementWrapper set on this property.- Returns:
- XmlElementWrapper instance if non-null, null otherwise
-
setXmlElementWrapper
Set the XmlElementWrapper for this property.- Parameters:
xmlElementWrapper
-
-
setIsXmlValue
public void setIsXmlValue(boolean isXmlValue) Set the isXmlValue property.- Parameters:
isXmlValue
-
-
isXmlValue
public boolean isXmlValue()Indicates if this property is an XmlValue.- Returns:
-
setIsXmlValueExtension
public void setIsXmlValueExtension(boolean isXmlValueExtension) Set the isXmlValueExtension property.- Parameters:
isXmlValueExtension
-
-
isXmlValueExtension
public boolean isXmlValueExtension()Indicates if this property is an XmlValueExtension.- Returns:
-
setIsXmlList
public void setIsXmlList(boolean isXmlList) Set the isXmlList property.- Parameters:
isXmlList
-
-
isXmlList
public boolean isXmlList()Indicates if this property is an XmlList.- Returns:
-
getInverseReferencePropertyName
-
setInverseReferencePropertyName
-
getInverseReferencePropertyGetMethodName
-
getInverseReferencePropertySetMethodName
-
setInverseReferencePropertyGetMethodName
-
setInverseReferencePropertySetMethodName
-
getInverseReferencePropertyContainerClass
-
setInverseReferencePropertyContainerClass
-
isXmlId
public boolean isXmlId()Indicates if this property is an ID field.- Returns:
-
setIsXmlId
public void setIsXmlId(boolean isXmlId) Sets the indicator that identifies this property as an ID field.- Parameters:
isXmlId
-
-
isXmlIdExtension
public boolean isXmlIdExtension()Indicates if this property is an ID extension field.- Returns:
-
setIsXmlIdExtension
public void setIsXmlIdExtension(boolean isXmlIdExtension) Sets the indicator that identifies this property as an ID extension field.- Parameters:
isXmlIdExtension
-
-
isXmlIdRef
public boolean isXmlIdRef()Indicates if this property is a reference to an ID field.- Returns:
-
setIsXmlIdRef
public void setIsXmlIdRef(boolean isXmlIdRef) Sets the indicator that identifies this property as a reference to an ID field.- Parameters:
isXmlIdRef
-
-
isLax
public boolean isLax()Used with XmlAnyElement.- Returns:
-
setLax
public void setLax(boolean b) Used with XmlAnyElement.- Parameters:
b
-
-
getDomHandlerClassName
Return the DomHandler class name. Used with XmlAnyElement.- Returns:
-
setDomHandlerClassName
Set the DomHandler class name. Used with XmlAnyElement.- Parameters:
domHandlerClassName
-
-
getKeyType
-
setKeyType
-
getValueType
-
getActualValueType
Return the generic type if it was set (collection or array item type) otherwise return the type of this property- Returns:
-
setValueType
-
getValueGenericType
-
setValueGenericType
-
isMap
public boolean isMap() -
isInverseReference
public boolean isInverseReference() -
setInverseReference
public void setInverseReference(boolean isInverseReference, boolean isWriteable) -
isWriteableInverseReference
public boolean isWriteableInverseReference() -
getXmlElements
Return the XmlElements object set for this Property. Typically this will only be set if we are dealing with a 'choice'.- Returns:
-
setXmlElements
Set the XmlElements object for this Property. Typically this will only be set if we are dealing with a 'choice'.- Parameters:
xmlElements
-
-
getChoiceProperties
Return the choice properties set on this property. Typically this will only contain properties if we are dealing with a 'choice'.- Returns:
-
setChoiceProperties
Set the choice properties for this property. Typically this will only contain properties if we are dealing with a 'choice'.- Parameters:
properties
-
-
getXmlElementRefs
Return the List of XmlElementRef(s) for this Property.- Returns:
-
setXmlElementRefs
Set the List of XmlElementRef(s) for this Property.- Parameters:
xmlElementRefs
-
-
addReferencedElement
Add an ElementDeclaration to the list of referenced elements. Typically this will only contain ElementDeclarations if we are dealing with a 'reference'.- Parameters:
element
-
-
getReferencedElements
Return the list of referenced elements. Typically this will only contain ElementDeclarations if we are dealing with a 'reference'.- Returns:
-
getFixedValue
-
setFixedValue
-
isPositional
public boolean isPositional()Indicates if this property is mapped by position, i.e. 'name="data[1]"', or is mapped by attribute value (predicate mapping), i.e. 'personal-info[@pi-type='last-name']/name[@name-type='surname']/text()' -
setReadOnly
public void setReadOnly(boolean isReadOnly) Flag the mapping for this Property as read-only.- Parameters:
isReadOnly
- the true/false value to set
-
isReadOnly
public boolean isReadOnly()Indicates if the mapping for this Property is read-only.- Returns:
- true if read-only, false if not
-
isSetReadOnly
public boolean isSetReadOnly()Indicates if the isReadOnly flag was set via external metadata.- Returns:
-
setWriteOnly
public void setWriteOnly(boolean isWriteOnly) Flag the mapping for this Property as write-only.- Parameters:
isWriteOnly
- the true/false value to set
-
isWriteOnly
public boolean isWriteOnly()- Returns:
- true if write-only, false if not
-
isSetWriteOnly
public boolean isSetWriteOnly()Indicates if the isWriteOnly flag was set via external metadata.- Returns:
-
setCdata
public void setCdata(boolean isCdata) Flag the mapping for this Property as containing character data.- Parameters:
isCdata
- the true/false value to set
-
isCdata
public boolean isCdata()- Returns:
- true if character data, false if not
-
isSetCdata
public boolean isSetCdata()Indicates if the isCdata flag was set via external metadata.- Returns:
-
getXmlPath
Return the xpath for this property.- Returns:
-
setXmlPath
Set the xpath for this property.- Parameters:
xmlPath
-
-
isSetXmlPath
public boolean isSetXmlPath()Indicates if an xpath is set for this property.- Returns:
-
getNullPolicy
Returns the null policy for this property.- Returns:
- null policy or null if not set
-
setNullPolicy
Set the null policy for this property.- Parameters:
nullPolicy
-
-
isSetNullPolicy
public boolean isSetNullPolicy()Indicates if a null policy is set for this property.- Returns:
-
shouldSetNillable
public boolean shouldSetNillable()Indicates if nillable='true' should be set on a given schema component. This will typically be called by SchemaGenerator. The value returned will be true if one of the following is true: - isNillable - isSetNullPolicy && xsi-nil-represents-null == 'true' - isSetNullPolicy && null-representation-for-xml == 'XSI_NIL'- Returns:
-
getUserProperties
Return the Map of user-defined properties.- Returns:
-
setUserProperties
Set the Map of user-defined properties.- Parameters:
userProperties
-
-
isSetUserProperties
public boolean isSetUserProperties()Indicates if a map of userProperties is set for this property.- Returns:
- true if the userProperties property has been set, i.e. is non-null, otherwise false
-
getXmlTransformation
Return the XmlTransformation set on this property.- Returns:
- the XmlTransformation set on this property, or null if one has not been set.
-
setXmlTransformation
Set the XmlTransformation for this property. The info contained in the XmlTransformation will be used to construct an XmlTransformationMapping.- Parameters:
xmlTransformation
-
-
isSetXmlTransformation
public boolean isSetXmlTransformation()Indicates if an XmlTransformation is set for this porperty.- Returns:
- true if the xmlTransformation property has been set, i.e. is non-null, otherwise false
-
isXmlTransformation
public boolean isXmlTransformation()Indicates if this property represents an XmlTransformation.- Returns:
- value of isXmlTransformation property
-
setIsXmlTransformation
public void setIsXmlTransformation(boolean isXmlTransformation) Set flag that indicates if this property represents an XmlTransformation.- Parameters:
isXmlTransformation
-
-
setXmlJoinNodes
Set XmlJoinNodes for this property.- Parameters:
xmlJoinNodes
- the xmlJoinNodes to set
-
getXmlJoinNodes
Return the XmlJoinNodes for this property.- Returns:
- the xmlJoinNodes
-
isSetXmlJoinNodes
public boolean isSetXmlJoinNodes()Indicates if this property has XmlJoinNodes set. return true if xmlJoinNodes is non-null, otherwise false -
clone
Return a shallow copy of this Property. Simply calls super.clone(). -
getXmlJoinNodesList
Return the list of XmlJoinNodes for this Property, if any. This will typically be set when processing an XmlElements declaration containing XmlJoinNodes. -
setXmlJoinNodesList
Set the list of XmlJoinNodes for this Property. This method will typically be called when processing an XmlElements declaration containing XmlJoinNodes. -
isSetXmlJoinNodesList
public boolean isSetXmlJoinNodesList()Indicates if xmlJoinNodesList has been set, i.e. is non-null- Returns:
- true if xmlJoinNodesList is non-null, false otherwise
-
isVirtual
public boolean isVirtual() -
setExtension
public void setExtension(boolean value) -
isXmlLocation
public boolean isXmlLocation() -
setXmlLocation
public void setXmlLocation(boolean isXmlLocation) -
isSuperClassProperty
public boolean isSuperClassProperty() -
setIsSuperClassProperty
public void setIsSuperClassProperty(boolean b) -
getVariableAttributeName
-
setVariableAttributeName
-
getVariableClassName
-
setVariableClassName
-
isVariableNodeAttribute
public boolean isVariableNodeAttribute() -
setVariableNodeAttribute
public void setVariableNodeAttribute(boolean variableNodeAttribute) -
isTyped
public boolean isTyped() -
setTyped
public void setTyped(boolean isTyped) -
getFacets
-
addFacet
-
setMinOccurs
public void setMinOccurs(int minOccurs) -
getMinOccurs
-
setMaxOccurs
public void setMaxOccurs(int maxOccurs) -
getMaxOccurs
-
setNotNullAnnotated
public void setNotNullAnnotated(boolean notNullAnnotated) -
isNotNullAnnotated
public boolean isNotNullAnnotated()
-