org.apache.axis.encoding.ser
Class BaseDeserializerFactory

java.lang.Object
  |
  +--org.apache.axis.encoding.ser.BaseFactory
        |
        +--org.apache.axis.encoding.ser.BaseDeserializerFactory
All Implemented Interfaces:
DeserializerFactory, DeserializerFactory, java.io.Serializable
Direct Known Subclasses:
ArrayDeserializerFactory, Base64DeserializerFactory, BeanDeserializerFactory, CalendarDeserializerFactory, CastorDeserializerFactory, DateDeserializerFactory, DocumentDeserializerFactory, ElementDeserializerFactory, EnumDeserializerFactory, HexDeserializerFactory, JAFDataHandlerDeserializerFactory, MapDeserializerFactory, QNameDeserializerFactory, SimpleDeserializerFactory, VectorDeserializerFactory

public abstract class BaseDeserializerFactory
extends BaseFactory
implements DeserializerFactory

Base class for Axis Deserialization Factory classes for code reuse

Author:
Rich Scheuerle
See Also:
Serialized Form

Field Summary
protected  java.lang.Class deserClass
           
protected  java.lang.reflect.Constructor deserClassConstructor
           
protected  java.lang.reflect.Method getDeserializer
           
protected  java.lang.Class javaType
           
protected  QName xmlType
           
 
Fields inherited from class org.apache.axis.encoding.ser.BaseFactory
methodCache
 
Constructor Summary
BaseDeserializerFactory(java.lang.Class deserClass)
          Constructor
BaseDeserializerFactory(java.lang.Class deserClass, QName xmlType, java.lang.Class javaType)
           
 
Method Summary
static DeserializerFactory createFactory(java.lang.Class factory, java.lang.Class javaType, QName xmlType)
          Utility method that intospects on a factory class to decide how to create the factory.
protected  java.lang.reflect.Constructor getDeserClassConstructor()
          Returns the deserClassConstructor.
 Deserializer getDeserializerAs(java.lang.String mechanismType)
          Returns a Deserializer for the specified XML processing mechanism type.
protected  Deserializer getGeneralPurpose(java.lang.String mechanismType)
          Obtains a deserializer by invoking (javaType, xmlType) on the deserClass.
protected  java.lang.reflect.Method getGetDeserializer()
          Returns the getDeserializer.
protected  Deserializer getSpecialized(java.lang.String mechanismType)
          Obtains a deserializer by invoking getDeserializer method in the javaType class or its Helper class.
 java.util.Iterator getSupportedMechanismTypes()
          Returns a list of all XML processing mechanism types supported by this DeserializerFactory.
 
Methods inherited from class org.apache.axis.encoding.ser.BaseFactory
getMethod
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

deserClass

protected java.lang.Class deserClass

xmlType

protected QName xmlType

javaType

protected java.lang.Class javaType

deserClassConstructor

protected transient java.lang.reflect.Constructor deserClassConstructor

getDeserializer

protected transient java.lang.reflect.Method getDeserializer
Constructor Detail

BaseDeserializerFactory

public BaseDeserializerFactory(java.lang.Class deserClass)
Constructor

Parameters:
deserClass - is the class of the Deserializer

BaseDeserializerFactory

public BaseDeserializerFactory(java.lang.Class deserClass,
                               QName xmlType,
                               java.lang.Class javaType)
Method Detail

getDeserializerAs

public Deserializer getDeserializerAs(java.lang.String mechanismType)
                               throws JAXRPCException
Description copied from interface: DeserializerFactory
Returns a Deserializer for the specified XML processing mechanism type.

Specified by:
getDeserializerAs in interface DeserializerFactory
Parameters:
mechanismType - XML processing mechanism type [TBD: definition of valid constants]
Returns:
Returns a Deserializer for the specified XML processing mechanism type.
JAXRPCException

getGeneralPurpose

protected Deserializer getGeneralPurpose(java.lang.String mechanismType)
Obtains a deserializer by invoking (javaType, xmlType) on the deserClass.


getSpecialized

protected Deserializer getSpecialized(java.lang.String mechanismType)
Obtains a deserializer by invoking getDeserializer method in the javaType class or its Helper class.


getSupportedMechanismTypes

public java.util.Iterator getSupportedMechanismTypes()
Returns a list of all XML processing mechanism types supported by this DeserializerFactory.

Specified by:
getSupportedMechanismTypes in interface DeserializerFactory
Returns:
List of unique identifiers for the supported XML processing mechanism types

createFactory

public static DeserializerFactory createFactory(java.lang.Class factory,
                                                java.lang.Class javaType,
                                                QName xmlType)
Utility method that intospects on a factory class to decide how to create the factory. Tries in the following order: public static create(Class javaType, QName xmlType) public (Class javaType, QName xmlType) public ()

Parameters:
factory - class
javaType -
xmlType -

getDeserClassConstructor

protected java.lang.reflect.Constructor getDeserClassConstructor()
Returns the deserClassConstructor.

Returns:
Constructor

getGetDeserializer

protected java.lang.reflect.Method getGetDeserializer()
Returns the getDeserializer.

Returns:
Method


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