Class XMLInfoNature

  • All Implemented Interfaces:
    Nature

    public final class XMLInfoNature
    extends BaseNature
    A XML specific view of a PropertyHolder, which can be a ClassInfo or a FieldInfo. Property based implementation.
    Since:
    1.2.1
    Author:
    Lukas Lang
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      GroupInfo getGroupInfo()
      Returns the GroupInfo for this XML nature.
      java.lang.String getId()
      Implementation returns the fully qualified class name.
      java.lang.String getNamespacePrefix()
      Returns the namespace prefix of the object described by this XMLInfo.
      java.lang.String getNamespaceURI()
      Returns the namespace URI of the object described by this XMLInfo.
      java.lang.String getNodeName()
      Returns the XML name for the object described by this XMLInfo.
      NodeType getNodeType()
      Returns the node type for the object described by this XMLInfo.
      java.lang.String getNodeTypeName()
      Returns the string name of the nodeType, either "attribute", "element" or "text".
      XSType getSchemaType()
      Returns the XML Schema type for the described object.
      java.util.List<java.lang.String> getSubstitutionGroups()
      Returns the possible substitution groups.
      boolean isChoice()
      Returns true if the compositor of this GroupInfo is a choice.
      boolean isContainer()
      Returns true if this ClassInfo describes a container class.
      boolean isElementDefinition()
      Returns true if XSD is global element or element with anonymous type or false if property is not set.
      boolean isMultivalued()
      Returns whether or not the object described by this XMLInfo is multi-valued (appears more than once in the XML document).
      boolean isRequired()
      Return true if the XML object described by this XMLInfo must appear at least once in the XML document (or object model).
      boolean isSequence()
      Returns true if the compositor of this GroupInfo is a sequence.
      void setContainer​(boolean isContainer)
      Sets whether or not this ClassInfo describes a container class.
      void setElementDefinition​(boolean elementDef)
      Sets whether or not XSD is element or not.
      void setGroupInfo​(GroupInfo groupInfo)
      Sets the GroupInfo for this XML nature.
      void setMultivalued​(boolean multivalued)
      Sets whether the XML object can appear more than once in the XML document.
      void setNamespacePrefix​(java.lang.String nsPrefix)
      Sets the desired namespace prefix for this XMLInfo There is no guarantee that this prefix will be used.
      void setNamespaceURI​(java.lang.String nsURI)
      Sets the Namespace URI for this XMLInfo.
      void setNodeName​(java.lang.String name)
      Sets the XML name of the object described by this XMLInfo.
      void setNodeType​(NodeType nodeType)
      Sets the nodeType for this XMLInfo.
      void setRequired​(boolean required)
      Sets whether or not the XML object must appear at least once.
      void setSchemaType​(XSType xsType)
      Sets the XML Schema type for this XMLInfo.
      void setSubstitutionGroups​(java.util.List<java.lang.String> substitutionGroups)
      Sets the possible substitution groups.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • XMLInfoNature

        public XMLInfoNature​(PropertyHolder holder)
        Constructor taking a PropertyHolder.
        Parameters:
        holder - in focus.
    • Method Detail

      • getId

        public java.lang.String getId()
        Implementation returns the fully qualified class name.
        Returns:
        the Nature id.
        See Also:
        org.exolab.castor.builder.info.nature.Nature#getId()
      • getNamespacePrefix

        public java.lang.String getNamespacePrefix()
        Returns the namespace prefix of the object described by this XMLInfo.
        Returns:
        the namespace prefix of the object described by this XMLInfo
      • getNamespaceURI

        public java.lang.String getNamespaceURI()
        Returns the namespace URI of the object described by this XMLInfo.
        Returns:
        the namespace URI of the object described by this XMLInfo
      • getNodeName

        public java.lang.String getNodeName()
        Returns the XML name for the object described by this XMLInfo.
        Returns:
        the XML name for the object described by this XMLInfo, or null if no name has been set
      • getNodeType

        public NodeType getNodeType()
        Returns the node type for the object described by this XMLInfo. XMLInfo.ELEMENT_TYPE if property is not set.
        Returns:
        the node type for the object described by this XMLInfo
      • getNodeTypeName

        public java.lang.String getNodeTypeName()
        Returns the string name of the nodeType, either "attribute", "element" or "text".
        Returns:
        the name of the node-type of the object described by this XMLInfo.
      • getSchemaType

        public XSType getSchemaType()
        Returns the XML Schema type for the described object.
        Returns:
        the XML Schema type.
      • isElementDefinition

        public boolean isElementDefinition()
        Returns true if XSD is global element or element with anonymous type or false if property is not set.
        Returns:
        true if xsd is element, false if not or null.
      • isMultivalued

        public boolean isMultivalued()
        Returns whether or not the object described by this XMLInfo is multi-valued (appears more than once in the XML document). Returns false if the property was not set.
        Returns:
        true if this object can appear more than once, false if not or not set.
      • isRequired

        public boolean isRequired()
        Return true if the XML object described by this XMLInfo must appear at least once in the XML document (or object model). Returns false if the property was not set.
        Returns:
        true if the XML object must appear at least once, false if not or not set.
      • setElementDefinition

        public void setElementDefinition​(boolean elementDef)
        Sets whether or not XSD is element or not.
        Parameters:
        elementDef - The flag indicating whether or not XSD is global element, element with anonymous type or not.
      • setMultivalued

        public void setMultivalued​(boolean multivalued)
        Sets whether the XML object can appear more than once in the XML document.
        Parameters:
        multivalued - The boolean indicating whether or not the object can appear more than once.
      • setNamespacePrefix

        public void setNamespacePrefix​(java.lang.String nsPrefix)
        Sets the desired namespace prefix for this XMLInfo There is no guarantee that this prefix will be used.
        Parameters:
        nsPrefix - the desired namespace prefix
      • setNamespaceURI

        public void setNamespaceURI​(java.lang.String nsURI)
        Sets the Namespace URI for this XMLInfo.
        Parameters:
        nsURI - the Namespace URI for this XMLInfo
      • setNodeName

        public void setNodeName​(java.lang.String name)
        Sets the XML name of the object described by this XMLInfo.
        Parameters:
        name - the XML node name of the described object.
      • setNodeType

        public void setNodeType​(NodeType nodeType)
        Sets the nodeType for this XMLInfo.
        Parameters:
        nodeType - the node type of the described object
      • setRequired

        public void setRequired​(boolean required)
        Sets whether or not the XML object must appear at least once.
        Parameters:
        required - the flag indicating whether or not this XML object is required
      • setSchemaType

        public void setSchemaType​(XSType xsType)
        Sets the XML Schema type for this XMLInfo.
        Parameters:
        xsType - the XML Schema type
      • getSubstitutionGroups

        public java.util.List<java.lang.String> getSubstitutionGroups()
        Returns the possible substitution groups.
        Returns:
        the possible substitution groups.
      • setSubstitutionGroups

        public void setSubstitutionGroups​(java.util.List<java.lang.String> substitutionGroups)
        Sets the possible substitution groups.
        Parameters:
        substitutionGroups - Possible substitution groups.
      • isContainer

        public boolean isContainer()
        Returns true if this ClassInfo describes a container class. A container class is a class which should not be marshalled as XML, but whose members should be.
        Returns:
        true if this ClassInfo describes a container class.
      • setContainer

        public void setContainer​(boolean isContainer)
        Sets whether or not this ClassInfo describes a container class. A container class is a class which should not be marshalled as XML, but whose members should be. By default this is false.
        Parameters:
        isContainer - the boolean value when true indicates this class should be a container class.
      • setGroupInfo

        public void setGroupInfo​(GroupInfo groupInfo)
        Sets the GroupInfo for this XML nature.
        Parameters:
        groupInfo - the GroupInfo instance.
      • isChoice

        public boolean isChoice()
        Returns true if the compositor of this GroupInfo is a choice.
        Returns:
        true if the compositor of this GroupInfo is a choice
      • isSequence

        public boolean isSequence()
        Returns true if the compositor of this GroupInfo is a sequence.
        Returns:
        true if the compositor of this GroupInfo is a sequence