com.caucho.hessian.io
Class JavaDeserializer

java.lang.Object
  extended by com.caucho.hessian.io.AbstractDeserializer
      extended by com.caucho.hessian.io.AbstractMapDeserializer
          extended by com.caucho.hessian.io.JavaDeserializer
All Implemented Interfaces:
Deserializer

public class JavaDeserializer
extends AbstractMapDeserializer

Serializing an object for known object types.


Nested Class Summary
(package private) static class JavaDeserializer.BooleanFieldDeserializer
           
(package private) static class JavaDeserializer.ByteFieldDeserializer
           
(package private) static class JavaDeserializer.DoubleFieldDeserializer
           
(package private) static class JavaDeserializer.FieldDeserializer
           
(package private) static class JavaDeserializer.FloatFieldDeserializer
           
(package private) static class JavaDeserializer.IntFieldDeserializer
           
(package private) static class JavaDeserializer.LongFieldDeserializer
           
(package private) static class JavaDeserializer.ObjectFieldDeserializer
           
(package private) static class JavaDeserializer.ShortFieldDeserializer
           
(package private) static class JavaDeserializer.StringFieldDeserializer
           
 
Field Summary
private  java.lang.reflect.Constructor _constructor
           
private  java.lang.Object[] _constructorArgs
           
private  java.util.HashMap _fieldMap
           
private  java.lang.reflect.Method _readResolve
           
private  java.lang.Class _type
           
private static java.util.logging.Logger log
           
 
Constructor Summary
JavaDeserializer(java.lang.Class cl)
           
 
Method Summary
protected  java.util.HashMap getFieldMap(java.lang.Class cl)
          Creates a map of the classes fields.
protected static java.lang.Object getParamArg(java.lang.Class cl)
          Creates a map of the classes fields.
protected  java.lang.reflect.Method getReadResolve(java.lang.Class cl)
          Returns the readResolve method
 java.lang.Class getType()
           
protected  java.lang.Object instantiate()
           
(package private) static void logDeserializeError(java.lang.reflect.Field field, java.lang.Object obj, java.lang.Object value, java.lang.Throwable e)
           
 java.lang.Object readMap(AbstractHessianInput in)
           
 java.lang.Object readMap(AbstractHessianInput in, java.lang.Object obj)
           
 java.lang.Object readObject(AbstractHessianInput in, java.lang.Object obj, java.lang.String[] fieldNames)
           
 java.lang.Object readObject(AbstractHessianInput in, java.lang.String[] fieldNames)
           
private  java.lang.Object resolve(java.lang.Object obj)
           
 
Methods inherited from class com.caucho.hessian.io.AbstractMapDeserializer
readObject
 
Methods inherited from class com.caucho.hessian.io.AbstractDeserializer
codeName, error, readLengthList, readList
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

private static final java.util.logging.Logger log

_type

private java.lang.Class _type

_fieldMap

private java.util.HashMap _fieldMap

_readResolve

private java.lang.reflect.Method _readResolve

_constructor

private java.lang.reflect.Constructor _constructor

_constructorArgs

private java.lang.Object[] _constructorArgs
Constructor Detail

JavaDeserializer

public JavaDeserializer(java.lang.Class cl)
Method Detail

getType

public java.lang.Class getType()
Specified by:
getType in interface Deserializer
Overrides:
getType in class AbstractMapDeserializer

readMap

public java.lang.Object readMap(AbstractHessianInput in)
                         throws java.io.IOException
Specified by:
readMap in interface Deserializer
Overrides:
readMap in class AbstractDeserializer
Throws:
java.io.IOException

readObject

public java.lang.Object readObject(AbstractHessianInput in,
                                   java.lang.String[] fieldNames)
                            throws java.io.IOException
Specified by:
readObject in interface Deserializer
Overrides:
readObject in class AbstractDeserializer
Throws:
java.io.IOException

getReadResolve

protected java.lang.reflect.Method getReadResolve(java.lang.Class cl)
Returns the readResolve method


readMap

public java.lang.Object readMap(AbstractHessianInput in,
                                java.lang.Object obj)
                         throws java.io.IOException
Throws:
java.io.IOException

readObject

public java.lang.Object readObject(AbstractHessianInput in,
                                   java.lang.Object obj,
                                   java.lang.String[] fieldNames)
                            throws java.io.IOException
Throws:
java.io.IOException

resolve

private java.lang.Object resolve(java.lang.Object obj)
                          throws java.lang.Exception
Throws:
java.lang.Exception

instantiate

protected java.lang.Object instantiate()
                                throws java.lang.Exception
Throws:
java.lang.Exception

getFieldMap

protected java.util.HashMap getFieldMap(java.lang.Class cl)
Creates a map of the classes fields.


getParamArg

protected static java.lang.Object getParamArg(java.lang.Class cl)
Creates a map of the classes fields.


logDeserializeError

static void logDeserializeError(java.lang.reflect.Field field,
                                java.lang.Object obj,
                                java.lang.Object value,
                                java.lang.Throwable e)
                         throws java.io.IOException
Throws:
java.io.IOException