org.I0Itec.zkclient.serialize
Class TcclAwareObjectIputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.ObjectInputStream
          extended by org.I0Itec.zkclient.serialize.TcclAwareObjectIputStream
All Implemented Interfaces:
java.io.Closeable, java.io.DataInput, java.io.ObjectInput, java.io.ObjectStreamConstants

public class TcclAwareObjectIputStream
extends java.io.ObjectInputStream

An ObjectInputStream that is aware of the TCCL.


Nested Class Summary
 
Nested classes/interfaces inherited from class java.io.ObjectInputStream
java.io.ObjectInputStream.GetField
 
Field Summary
 
Fields inherited from interface java.io.ObjectStreamConstants
baseWireHandle, PROTOCOL_VERSION_1, PROTOCOL_VERSION_2, SC_BLOCK_DATA, SC_ENUM, SC_EXTERNALIZABLE, SC_SERIALIZABLE, SC_WRITE_METHOD, STREAM_MAGIC, STREAM_VERSION, SUBCLASS_IMPLEMENTATION_PERMISSION, SUBSTITUTION_PERMISSION, TC_ARRAY, TC_BASE, TC_BLOCKDATA, TC_BLOCKDATALONG, TC_CLASS, TC_CLASSDESC, TC_ENDBLOCKDATA, TC_ENUM, TC_EXCEPTION, TC_LONGSTRING, TC_MAX, TC_NULL, TC_OBJECT, TC_PROXYCLASSDESC, TC_REFERENCE, TC_RESET, TC_STRING
 
Constructor Summary
TcclAwareObjectIputStream(java.io.InputStream in)
           
 
Method Summary
protected  java.lang.Class resolveClass(java.io.ObjectStreamClass classDesc)
          Load the local class equivalent of the specified stream class description.
protected  java.lang.Class resolveProxyClass(java.lang.String[] interfaces)
          Returns a proxy class that implements the interfaces named in a proxy class descriptor; subclasses may implement this method to read custom data from the stream along with the descriptors for dynamic proxy classes, allowing them to use an alternate loading mechanism for the interfaces and the proxy class.
 
Methods inherited from class java.io.ObjectInputStream
available, close, defaultReadObject, enableResolveObject, read, read, readBoolean, readByte, readChar, readClassDescriptor, readDouble, readFields, readFloat, readFully, readFully, readInt, readLine, readLong, readObject, readObjectOverride, readShort, readStreamHeader, readUnshared, readUnsignedByte, readUnsignedShort, readUTF, registerValidation, resolveObject, skipBytes
 
Methods inherited from class java.io.InputStream
mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.io.ObjectInput
read, skip
 

Constructor Detail

TcclAwareObjectIputStream

public TcclAwareObjectIputStream(java.io.InputStream in)
                          throws java.io.IOException
Throws:
java.io.IOException
Method Detail

resolveClass

protected java.lang.Class resolveClass(java.io.ObjectStreamClass classDesc)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
Load the local class equivalent of the specified stream class description. Uses the current class ClassLoader and falls back to the Thread context ClassLoader.

Overrides:
resolveClass in class java.io.ObjectInputStream
Throws:
java.io.IOException
java.lang.ClassNotFoundException

resolveProxyClass

protected java.lang.Class resolveProxyClass(java.lang.String[] interfaces)
                                     throws java.io.IOException,
                                            java.lang.ClassNotFoundException
Returns a proxy class that implements the interfaces named in a proxy class descriptor; subclasses may implement this method to read custom data from the stream along with the descriptors for dynamic proxy classes, allowing them to use an alternate loading mechanism for the interfaces and the proxy class. For each interface uses the current class ClassLoader and falls back to the Thread context ClassLoader.

Overrides:
resolveProxyClass in class java.io.ObjectInputStream
Throws:
java.io.IOException
java.lang.ClassNotFoundException