## org.apache.axis.encoding
Class DefaultTypeMappingImpl

    java.lang.Object
      org.apache.axis.encoding.TypeMappingImpl
          org.apache.axis.encoding.DefaultTypeMappingImpl

All Implemented Interfaces:
  java.io.Serializable

Direct Known Subclasses:
  DefaultJAXRPC11TypeMappingImpl, DefaultSOAPEncodingTypeMappingImpl

public class DefaultTypeMappingImpl
extends TypeMappingImpl

This is the implementation of the axis Default TypeMapping (which extends the JAX-RPC TypeMapping interface) for SOAP 1.1. A TypeMapping contains tuples as follows: {Java type, SerializerFactory, DeserializerFactory, Type QName) In other words, it serves to map Java types to and from XML types using particular Serializers/Deserializers. Each TypeMapping is associated with one or more encodingStyle URIs. The wsdl in your web service will use a number of types. The tuple information for each of these will be accessed via the TypeMapping. This TypeMapping is the "default" one, which includes all the standard SOAP and schema XSD types. Individual TypeMappings (associated with AxisEngines and SOAPServices) will delegate to this one, so if you haven't overriden a default mapping we'll end up getting it from here.

Author:
  Rich Scheuerle (scheu@us.ibm.com)
See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class org.apache.axis.encoding.TypeMappingImpl
`TypeMappingImpl.Pair`

Field Summary

Fields inherited from class org.apache.axis.encoding.TypeMappingImpl
`doAutoTypes, dotnet_soapenc_bugfix, log`

Constructor Summary
`protected` `DefaultTypeMappingImpl()`
`protected` `DefaultTypeMappingImpl(boolean noMappings)`

Method Summary
`static TypeMappingDelegate` `getSingletonDelegate()` Obtain the singleton default typemapping.
`protected void` `initMappings()`
`protected void` `myRegister(QName xmlType, java.lang.Class javaType, SerializerFactory sf, DeserializerFactory df)` Construct TypeMapping for all the [xmlType, javaType] for all of the known xmlType namespaces.
`protected void` `myRegisterSimple(QName xmlType, java.lang.Class javaType)` Register a "simple" type mapping - in other words, a
`void` `register(java.lang.Class javaType, QName xmlType, SerializerFactory sf, DeserializerFactory dsf)` Registers SerializerFactory and DeserializerFactory for a specific type mapping between an XML type and Java type.
`void` `removeDeserializer(java.lang.Class javaType, QName xmlType)` Removes the DeserializerFactory registered for the specified pair of Java type and XML data type.
`void` `removeSerializer(java.lang.Class javaType, QName xmlType)` Removes the SerializerFactory registered for the specified pair of Java type and XML data type.
`void` `setSupportedEncodings(java.lang.String[] namespaceURIs)` Sets the list of encoding styles supported by this TypeMapping object.

Methods inherited from class org.apache.axis.encoding.TypeMappingImpl
`finalGetDeserializer, finalGetSerializer, getAllClasses, getClassForQName, getDeserializer, getSerializer, getSupportedEncodings, getTypeQName, getTypeQNameExact, getTypeQNameRecursive, getXMLType, internalRegister, isRegistered, setDoAutoTypes, shouldDoAutoTypes`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DefaultTypeMappingImpl

    protected DefaultTypeMappingImpl()

### DefaultTypeMappingImpl

    protected DefaultTypeMappingImpl(boolean noMappings)

Method Detail

### getSingletonDelegate

    public static TypeMappingDelegate getSingletonDelegate()

  Obtain the singleton default typemapping.

### initMappings

    protected void initMappings()

### myRegisterSimple

    protected void myRegisterSimple(QName xmlType,
                                    java.lang.Class javaType)

  Register a "simple" type mapping - in other words, a

  Parameters:
    `xmlType` -
    `javaType` -

### myRegister

    protected void myRegister(QName xmlType,
                              java.lang.Class javaType,
                              SerializerFactory sf,
                              DeserializerFactory df)

  Construct TypeMapping for all the [xmlType, javaType] for all of the known xmlType namespaces. This is the shotgun approach, which works in 99% of the cases. The other cases that are Schema version specific (i.e. timeInstant vs. dateTime) are handled by the SchemaVersion Interface registerSchemaSpecificTypes().

  Parameters:
    `xmlType` - is the QName type
    `javaType` - is the java type
    `sf` - is the ser factory (if null, the simple factory is used)
    `df` - is the deser factory (if null, the simple factory is used)

### register

    public void register(java.lang.Class javaType,
                         QName xmlType,
                         SerializerFactory sf,
                         DeserializerFactory dsf)
                  throws JAXRPCException

  Description copied from class: `TypeMappingImpl`
  Registers SerializerFactory and DeserializerFactory for a specific type mapping between an XML type and Java type.

  Overrides:
    `register` in class `TypeMappingImpl`
  Parameters:
    `javaType` - - Class of the Java type
    `xmlType` - - Qualified name of the XML data type
    `sf` - - SerializerFactory
    `dsf` - - DeserializerFactory
  Throws:
    `JAXRPCException` - - If any error during the registration

### removeSerializer

    public void removeSerializer(java.lang.Class javaType,
                                 QName xmlType)
                          throws JAXRPCException

  Description copied from class: `TypeMappingImpl`
  Removes the SerializerFactory registered for the specified pair of Java type and XML data type.

  Overrides:
    `removeSerializer` in class `TypeMappingImpl`
  Parameters:
    `javaType` - - Class of the Java type
    `xmlType` - - Qualified name of the XML data type
  Throws:
    `JAXRPCException` - - If there is error in removing the registered SerializerFactory

### removeDeserializer

    public void removeDeserializer(java.lang.Class javaType,
                                   QName xmlType)
                            throws JAXRPCException

  Description copied from class: `TypeMappingImpl`
  Removes the DeserializerFactory registered for the specified pair of Java type and XML data type.

  Overrides:
    `removeDeserializer` in class `TypeMappingImpl`
  Parameters:
    `javaType` - - Class of the Java type
    `xmlType` - - Qualified name of the XML data type
  Throws:
    `JAXRPCException` - - If there is error in removing the registered DeserializerFactory

### setSupportedEncodings

    public void setSupportedEncodings(java.lang.String[] namespaceURIs)

  Description copied from class: `TypeMappingImpl`
  Sets the list of encoding styles supported by this TypeMapping object. (Not sure why this is useful...this information is automatically updated during registration.

  Overrides:
    `setSupportedEncodings` in class `TypeMappingImpl`
  Parameters:
    `namespaceURIs` - String[] of namespace URI's

Copyright © 2005 Apache Web Services Project. All Rights Reserved.