Class DefaultTypeMapping

  • All Implemented Interfaces:
    TypeMapping

    public class DefaultTypeMapping
    extends Object
    implements TypeMapping
    The implementation of the Aegis type map. It maintains a map from Java types Type and AegisType objects, also indexed by the XML Schema QName of each type.
    • Constructor Detail

      • DefaultTypeMapping

        public DefaultTypeMapping​(String identifierURI,
                                  TypeMapping defaultTM)
      • DefaultTypeMapping

        public DefaultTypeMapping()
      • DefaultTypeMapping

        public DefaultTypeMapping​(String identifierURI)
    • Method Detail

      • isRegistered

        public boolean isRegistered​(Type javaType)
        Description copied from interface: TypeMapping
        Returns a flag indicating if this type mapping has a mapping for a particular Java class.
        Specified by:
        isRegistered in interface TypeMapping
        Parameters:
        javaType - the class.
        Returns:
        true if there is a mapping for the type.
      • isRegistered

        public boolean isRegistered​(QName xmlType)
        Description copied from interface: TypeMapping
        Returns a flag indicating if this type mapping has a mapping for a particular XML Schema QName.
        Specified by:
        isRegistered in interface TypeMapping
        Parameters:
        xmlType - the QName.
        Returns:
        true if there is a mapping for the type.
      • register

        public void register​(Type javaType,
                             QName xmlType,
                             AegisType type)
        Description copied from interface: TypeMapping
        Register a type, manually specifying the java class, the schema type, and the Aegis type object that provides serialization, deserialization, and schema.
        Specified by:
        register in interface TypeMapping
        Parameters:
        javaType - Java class.
        xmlType - XML Schema type QName.
        type - Aegis type object.
      • register

        public void register​(AegisType type)
        Register a type that self-describes the schema type and the Java class.
        Specified by:
        register in interface TypeMapping
        Parameters:
        type - Aegis type object that
      • setTypeCreator

        public void setTypeCreator​(TypeCreator typeCreator)
      • createSoap11TypeMapping

        public static DefaultTypeMapping createSoap11TypeMapping​(boolean defaultNillable,
                                                                 boolean enableMtomXmime,
                                                                 boolean enableJDOM)
        Create a type mapping object with a stock set of mappings, including the SOAP 1.1 'encoded' types.
        Parameters:
        defaultNillable - whether elements are nillable by default.
        enableMtomXmime - whether to enable XMIME annotations with MTOM.
        enableJDOM - whether to add mappings for JDOM.
        Returns:
      • createDefaultTypeMapping

        public static DefaultTypeMapping createDefaultTypeMapping​(boolean defaultNillable,
                                                                  boolean enableMtomXmime)
      • createDefaultTypeMapping

        public static DefaultTypeMapping createDefaultTypeMapping​(boolean defaultNillable,
                                                                  boolean enableMtomXmime,
                                                                  boolean enableJDOM)
        Create a set of default type mappings.
        Parameters:
        defaultNillable - whether elements are nillable by default.
        enableMtomXmime - whether to enable XMIME annotations on MTOM.
        enableJDOM - whether to map JDOM types.
        Returns:
      • getMappingIdentifierURI

        public String getMappingIdentifierURI()
        Description copied from interface: TypeMapping
        Each mapping has a URI that identifies it. The mapping for a service uses the service URI. XML files can choose to only contribute mappings that match.
        Specified by:
        getMappingIdentifierURI in interface TypeMapping
        Returns:
        the URI.
      • setMappingIdentifierURI

        public void setMappingIdentifierURI​(String uri)
        Description copied from interface: TypeMapping
        This exists only to deal with an initialization order problem.
        Specified by:
        setMappingIdentifierURI in interface TypeMapping