Class XMLDescriptor

java.lang.Object
org.eclipse.persistence.core.descriptors.CoreDescriptor<AttributeGroup,DescriptorEventManager,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,Vector,org.eclipse.persistence.internal.descriptors.ObjectBuilder>
org.eclipse.persistence.descriptors.ClassDescriptor
org.eclipse.persistence.oxm.XMLDescriptor
All Implemented Interfaces:
Serializable, Cloneable, org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>

public class XMLDescriptor extends ClassDescriptor implements org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
Use an XML project for nontransactional, nonpersistent (in-memory) conversions between Java objects and XML documents. An XMLDescriptor is a set of mappings that describe how an objects's data is to be represented in an XML document. XML descriptors describe Java objects that you map to simple and complex types defined by an XML schema document (XSD). Using XML descriptors in an EclipseLink XML project, you can configure XML mappings.
See Also:
  • Constructor Details

    • XMLDescriptor

      public XMLDescriptor()
      PUBLIC: Return a new XMLDescriptor.
  • Method Details

    • getDefaultRootElement

      public String getDefaultRootElement()
      PUBLIC: Return the default root element name for the ClassDescriptor This value is stored in place of a table name This value is mandatory for all root objects
      Specified by:
      getDefaultRootElement in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Returns:
      the default root element specified on this ClassDescriptor
    • shouldPreserveDocument

      public boolean shouldPreserveDocument()
      PUBLIC: Return if unmapped information from the XML document should be maintained for this descriptor By default unmapped data is not preserved.
      Specified by:
      shouldPreserveDocument in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Returns:
      if this descriptor should preserve unmapped data
    • setShouldPreserveDocument

      public void setShouldPreserveDocument(boolean shouldPreserveDocument)
      PUBLIC: Specifies that object built from this descriptor should retain any unmapped information from their original XML Document when being written back out. By default unmapped data is not preserved.
      Parameters:
      shouldPreserveDocument - if this descriptor should preserve unmapped data
    • addRootElement

      public void addRootElement(String rootElementName)
      PUBLIC: Add a root element name for the Descriptor This value is stored in place of a table name
      Specified by:
      addRootElement in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Parameters:
      rootElementName - a root element to specify on this Descriptor
    • setDefaultRootElement

      public void setDefaultRootElement(String newDefaultRootElement)
      PUBLIC: Return the default root element name for the ClassDescriptor This value is stored in place of a table name This value is mandatory for all root objects
      Specified by:
      setDefaultRootElement in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Parameters:
      newDefaultRootElement - the default root element to specify on this ClassDescriptor
    • getNamespaceResolver

      public NamespaceResolver getNamespaceResolver()
      PUBLIC: Return the NamespaceResolver associated with this descriptor
      Specified by:
      getNamespaceResolver in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Returns:
      the NamespaceResolver associated with this descriptor
      See Also:
    • getNonNullNamespaceResolver

      public NamespaceResolver getNonNullNamespaceResolver()
      Specified by:
      getNonNullNamespaceResolver in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • getInheritancePolicy

      public InheritancePolicy getInheritancePolicy()
      PUBLIC: The inheritance policy is used to define how a descriptor takes part in inheritance. All inheritance properties for both child and parent classes is configured in inheritance policy. Caution must be used in using this method as it lazy initializes an inheritance policy. Calling this on a descriptor that does not use inheritance will cause problems, #hasInheritance() must always first be called.
      Specified by:
      getInheritancePolicy in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Overrides:
      getInheritancePolicy in class ClassDescriptor
      Returns:
      the InheritancePolicy associated with this descriptor
    • setNamespaceResolver

      public void setNamespaceResolver(NamespaceResolver newNamespaceResolver)
      PUBLIC: Set the NamespaceResolver to associate with this descriptor
      Specified by:
      setNamespaceResolver in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Parameters:
      newNamespaceResolver - the NamespaceResolver to associate with this descriptor
      See Also:
    • getSchemaReference

      public XMLSchemaReference getSchemaReference()
      PUBLIC: Return the SchemaReference associated with this descriptor
      Specified by:
      getSchemaReference in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Returns:
      the SchemaReference associated with this descriptor
      See Also:
    • setSchemaReference

      public void setSchemaReference(XMLSchemaReference newSchemaReference)
      PUBLIC: Set the SchemaReference to associate with this descriptor
      Specified by:
      setSchemaReference in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Parameters:
      newSchemaReference - the SchemaReference to associate with this descriptor
      See Also:
    • isXMLDescriptor

      public boolean isXMLDescriptor()
      PUBLIC: Return if the descriptor maps to XML.
      Overrides:
      isXMLDescriptor in class ClassDescriptor
    • isLazilyInitialized

      public boolean isLazilyInitialized()
      If true, the descriptor may be lazily initialized. This is useful if the descriptor may not get used.
      Specified by:
      isLazilyInitialized in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setLazilyInitialized

      public void setLazilyInitialized(boolean shouldLazyInitiailize)
      Specify in the descriptor may be lazily initialized. The default is false.
    • getPrimaryKeyFieldNames

      public Vector<String> getPrimaryKeyFieldNames()
      Description copied from class: ClassDescriptor
      PUBLIC: Return the names of all the primary keys.
      Specified by:
      getPrimaryKeyFieldNames in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Overrides:
      getPrimaryKeyFieldNames in class ClassDescriptor
    • validateMappingType

      protected void validateMappingType(DatabaseMapping mapping)
      Overrides:
      validateMappingType in class ClassDescriptor
    • buildNestedRowFromFieldValue

      public org.eclipse.persistence.internal.sessions.AbstractRecord buildNestedRowFromFieldValue(Object fieldValue)
      INTERNAL: Build(if necessary) and return the nested XMLRecord from the specified field value. The field value should be an XMLRecord or and XMLElement
      Overrides:
      buildNestedRowFromFieldValue in class ClassDescriptor
    • buildNestedRowsFromFieldValue

      public Vector buildNestedRowsFromFieldValue(Object fieldValue, org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: Build(if necessary) and return a Vector of the nested XMLRecords from the specified field value. The field value should be a Vector, an XMLRecord, or an XMLElement
      Overrides:
      buildNestedRowsFromFieldValue in class ClassDescriptor
    • newDirectMapping

      public AbstractDirectMapping newDirectMapping()
      Return a new direct/basic mapping for this type of descriptor.
      Overrides:
      newDirectMapping in class ClassDescriptor
    • newAggregateMapping

      public AggregateMapping newAggregateMapping()
      Return a new aggregate/embedded mapping for this type of descriptor.
      Overrides:
      newAggregateMapping in class ClassDescriptor
    • newAggregateCollectionMapping

      public DatabaseMapping newAggregateCollectionMapping()
      Return a new aggregate collection/element collection mapping for this type of descriptor.
      Overrides:
      newAggregateCollectionMapping in class ClassDescriptor
    • newDirectCollectionMapping

      public DatabaseMapping newDirectCollectionMapping()
      Return a new direct collection/element collection mapping for this type of descriptor.
      Overrides:
      newDirectCollectionMapping in class ClassDescriptor
    • addDirectMapping

      public DatabaseMapping addDirectMapping(String attributeName, String xpathString)
      PUBLIC: Add a direct mapping to the receiver. The new mapping specifies that an instance variable of the class of objects which the receiver describes maps in the default manner for its type to the indicated database field.
      Overrides:
      addDirectMapping in class ClassDescriptor
      Parameters:
      attributeName - the name of an instance variable of the class which the receiver describes.
      xpathString - the xpath of the xml element or attribute which corresponds with the designated instance variable.
      Returns:
      The newly created DatabaseMapping is returned.
    • addDirectMapping

      public DatabaseMapping addDirectMapping(String attributeName, String getMethodName, String setMethodName, String xpathString)
      PUBLIC: Add a direct to node mapping to the receiver. The new mapping specifies that a variable accessed by the get and set methods of the class of objects which the receiver describes maps in the default manner for its type to the indicated database field.
      Overrides:
      addDirectMapping in class ClassDescriptor
    • addPrimaryKeyFieldName

      public void addPrimaryKeyFieldName(String fieldName)
      Description copied from class: ClassDescriptor
      PUBLIC: Specify the primary key field of the descriptors table. This should be called for each field that makes up the primary key of the table. If the descriptor has many tables, this must be the primary key in the first table, if the other tables have the same primary key nothing else is required, otherwise a primary key/foreign key field mapping must be provided for each of the other tables.
      Overrides:
      addPrimaryKeyFieldName in class ClassDescriptor
      See Also:
    • addPrimaryKeyField

      public void addPrimaryKeyField(org.eclipse.persistence.internal.helper.DatabaseField field)
      Description copied from class: ClassDescriptor
      ADVANCED: Specify the primary key field of the descriptors table. This should be called for each field that makes up the primary key of the table. This can be used for advanced field types, such as XML nodes, or to set the field type.
      Specified by:
      addPrimaryKeyField in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Overrides:
      addPrimaryKeyField in class ClassDescriptor
    • setPrimaryKeyFields

      public void setPrimaryKeyFields(List<org.eclipse.persistence.internal.helper.DatabaseField> thePrimaryKeyFields)
      Description copied from class: ClassDescriptor
      INTERNAL: Set the primary key fields
      Overrides:
      setPrimaryKeyFields in class ClassDescriptor
      See Also:
    • buildDirectValuesFromFieldValue

      public Vector buildDirectValuesFromFieldValue(Object fieldValue) throws DatabaseException
      INTERNAL: Extract the direct values from the specified field value. Return them in a vector. The field value could be a vector or could be a text value if only a single value.
      Overrides:
      buildDirectValuesFromFieldValue in class ClassDescriptor
      Throws:
      DatabaseException
    • buildFieldValueFromDirectValues

      public Object buildFieldValueFromDirectValues(Vector directValues, String elementDataTypeName, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
      INTERNAL: Build the appropriate field value for the specified set of direct values. The database better be expecting a Vector.
      Overrides:
      buildFieldValueFromDirectValues in class ClassDescriptor
      Throws:
      DatabaseException
    • buildFieldValueFromNestedRows

      public Object buildFieldValueFromNestedRows(Vector nestedRows, String structureName, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
      INTERNAL: Build and return the appropriate field value for the specified set of nested rows.
      Overrides:
      buildFieldValueFromNestedRows in class ClassDescriptor
      Throws:
      DatabaseException
    • buildField

      public org.eclipse.persistence.internal.helper.DatabaseField buildField(String fieldName)
      INTERNAL: A DatabaseField is built from the given field name.
      Overrides:
      buildField in class ClassDescriptor
    • buildField

      public org.eclipse.persistence.internal.helper.DatabaseField buildField(org.eclipse.persistence.internal.helper.DatabaseField field)
      INTERNAL: This is used only in initialization.
      Overrides:
      buildField in class ClassDescriptor
    • initializeAggregateInheritancePolicy

      public void initializeAggregateInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: This is needed by regular aggregate descriptors (because they require review); but not by XML aggregate descriptors.
      Overrides:
      initializeAggregateInheritancePolicy in class ClassDescriptor
    • setTableNames

      public void setTableNames(Vector tableNames)
      Description copied from class: ClassDescriptor
      PUBLIC: Specify the all table names for the class of objects the receiver describes. If the table has a qualifier it should be specified using the dot notation, (i.e. "userid.employee"). This method is used for multiple tables
      Overrides:
      setTableNames in class ClassDescriptor
    • setTables

      public void setTables(Vector<org.eclipse.persistence.internal.helper.DatabaseTable> theTables)
      INTERNAL: Sets the tables
      Overrides:
      setTables in class ClassDescriptor
    • preInitialize

      public void preInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
      INTERNAL: Allow the descriptor to initialize any dependencies on this session.
      Overrides:
      preInitialize in class ClassDescriptor
      Throws:
      DescriptorException
    • preInitializeInheritancePolicy

      protected void preInitializeInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
      Description copied from class: ClassDescriptor
      Hook together the inheritance policy tree.
      Overrides:
      preInitializeInheritancePolicy in class ClassDescriptor
      Throws:
      DescriptorException
    • postInitialize

      public void postInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
      INTERNAL: Post initializations after mappings are initialized.
      Overrides:
      postInitialize in class ClassDescriptor
      Throws:
      DescriptorException
    • initialize

      public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
      INTERNAL: Initialize the mappings as a separate step. This is done as a separate step to ensure that inheritance has been first resolved.
      Overrides:
      initialize in class ClassDescriptor
      Throws:
      DescriptorException
    • requiresInitialization

      public boolean requiresInitialization(org.eclipse.persistence.internal.sessions.AbstractSession session)
      INTERNAL: XML descriptors are initialized normally, since they do not need to be cloned by XML aggregate mappings.
      Overrides:
      requiresInitialization in class ClassDescriptor
    • extractDefaultTable

      protected org.eclipse.persistence.internal.helper.DatabaseTable extractDefaultTable()
      Aggregates use a dummy table as default.
      Overrides:
      extractDefaultTable in class ClassDescriptor
    • wrapObjectInXMLRoot

      public Object wrapObjectInXMLRoot(org.eclipse.persistence.internal.oxm.record.UnmarshalRecord unmarshalRecord, boolean forceWrap)
      INTERNAL: Determines the appropriate object to return from the unmarshal call. The method will either return the object created in the xmlReader.parse() call or an instance of Root. An Root instance will be returned if the DOMRecord element being unmarshalled does not equal the descriptor's default root element.
      Specified by:
      wrapObjectInXMLRoot in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Parameters:
      unmarshalRecord -
      Returns:
      object
    • wrapObjectInXMLRoot

      public Object wrapObjectInXMLRoot(Object object, String elementNamespaceUri, String elementLocalName, String elementPrefix, boolean forceWrap, boolean isNamespaceAware, XMLUnmarshaller xmlUnmarshaller)
      INTERNAL: Determines the appropriate object to return from the unmarshal call. The method will either return the object created in the xmlReader.parse() call or an instance of Root. An Root instance will be returned if the DOMRecord element being unmarshalled does not equal the descriptor's default root element.
      Specified by:
      wrapObjectInXMLRoot in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Parameters:
      object -
      elementNamespaceUri -
      elementLocalName -
      elementPrefix -
      Returns:
      object
    • wrapObjectInXMLRoot

      public Object wrapObjectInXMLRoot(Object object, String elementNamespaceUri, String elementLocalName, String elementPrefix, String encoding, String version, boolean forceWrap, boolean isNamespaceAware, XMLUnmarshaller unmarshaller)
      INTERNAL:
      Specified by:
      wrapObjectInXMLRoot in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Returns:
    • shouldWrapObject

      public boolean shouldWrapObject(Object object, String elementNamespaceUri, String elementLocalName, String elementPrefix, boolean isNamespaceAware)
      INTERNAL:
      Returns:
    • getDefaultRootElementField

      public XMLField getDefaultRootElementField()
      Specified by:
      getDefaultRootElementField in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setDefaultRootElementField

      public void setDefaultRootElementField(XMLField xmlField)
    • getDefaultRootElementType

      public QName getDefaultRootElementType()
      Specified by:
      getDefaultRootElementType in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setDefaultRootElementType

      public void setDefaultRootElementType(QName type)
      The default root element type string will be stored until initialization - a QName will be created and stored on the default root element field during initialize.
      Parameters:
      type -
    • isSequencedObject

      public boolean isSequencedObject()
      INTERNAL:

      Indicates if the Object mapped by this descriptor is a sequenced data object and should be marshalled accordingly.

      Specified by:
      isSequencedObject in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setSequencedObject

      public void setSequencedObject(boolean isSequenced)
    • isWrapper

      public boolean isWrapper()
      Specified by:
      isWrapper in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setIsWrapper

      public void setIsWrapper(boolean value)
    • isResultAlwaysXMLRoot

      public boolean isResultAlwaysXMLRoot()
      Specified by:
      isResultAlwaysXMLRoot in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setResultAlwaysXMLRoot

      public void setResultAlwaysXMLRoot(boolean resultAlwaysXMLRoot)
      Specified by:
      setResultAlwaysXMLRoot in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • hasReferenceMappings

      public boolean hasReferenceMappings()
      INTERNAL: Returns true if any of the mappings on this descriptor are key-based reference mappings.
    • getTypedField

      public org.eclipse.persistence.internal.helper.DatabaseField getTypedField(org.eclipse.persistence.internal.helper.DatabaseField field)
      Description copied from class: ClassDescriptor
      INTERNAL: searches first descriptor than its ReturningPolicy for an equal field
      Specified by:
      getTypedField in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
      Overrides:
      getTypedField in class ClassDescriptor
    • getTypedField

      protected org.eclipse.persistence.internal.helper.DatabaseField getTypedField(StringTokenizer stringTokenizer)
    • getLocationAccessor

      public AttributeAccessor getLocationAccessor()
      INTERNAL: Returns this Descriptor's location accessor, if one is defined.
      Specified by:
      getLocationAccessor in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • setLocationAccessor

      public void setLocationAccessor(AttributeAccessor value)
      INTERNAL: Set this Descriptor's location accessor.
      Specified by:
      setLocationAccessor in interface org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
    • convertClassNamesToClasses

      public void convertClassNamesToClasses(ClassLoader classLoader)
      INTERNAL: Convert all the class-name-based settings in this Descriptor to actual class-based settings. This method is used when converting a project that has been built with class names to a project with classes.
      Overrides:
      convertClassNamesToClasses in class ClassDescriptor
      Parameters:
      classLoader -