com.atomikos.util
Class ClassLoadingObjectInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.ObjectInputStream
          extended by com.atomikos.util.ClassLoadingObjectInputStream
All Implemented Interfaces:
Closeable, DataInput, ObjectInput, ObjectStreamConstants

public class ClassLoadingObjectInputStream
extends ObjectInputStream

Copyright ©, Atomikos. All rights reserved. An object input stream that loads classes from a supplied ClassLoader instance, instead of using the system classpath. By default, the java.io.ObjectInputStream only recognizes classes if they are in the VMs classpath. This class uses a customizable classloader that looks for classes at any location.


Nested Class Summary
 
Nested classes/interfaces inherited from class java.io.ObjectInputStream
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
ClassLoadingObjectInputStream(InputStream in, ClassLoader classLoader)
          Create a new instance that uses a given inputstream and a supplied classloader.
 
Method Summary
protected  Class resolveClass(ObjectStreamClass v)
           
 
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, resolveProxyClass, 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

ClassLoadingObjectInputStream

public ClassLoadingObjectInputStream(InputStream in,
                                     ClassLoader classLoader)
                              throws IOException
Create a new instance that uses a given inputstream and a supplied classloader.

Parameters:
in - The input stream to read objects from.
classLoader - The classloader to load classes with.
Throws:
IOException
Method Detail

resolveClass

protected Class resolveClass(ObjectStreamClass v)
                      throws IOException,
                             ClassNotFoundException
Overrides:
resolveClass in class ObjectInputStream
Throws:
IOException
ClassNotFoundException