org.apache.tapestry.util.io
Class ResolvingObjectInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.ObjectInputStream
          extended by org.apache.tapestry.util.io.ResolvingObjectInputStream
All Implemented Interfaces:
java.io.Closeable, java.io.DataInput, java.io.ObjectInput, java.io.ObjectStreamConstants

public class ResolvingObjectInputStream
extends java.io.ObjectInputStream

Specialized subclass of ObjectInputStreamthat knows how to resolve classes with a non-default class loader (represented by an instance of ClassResolver).

Since:
3.0
Author:
Howard Lewis Ship

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
ResolvingObjectInputStream(org.apache.hivemind.ClassResolver resolver, java.io.InputStream input)
           
 
Method Summary
protected  java.lang.Class resolveClass(java.io.ObjectStreamClass v)
          Overrides the default implementation to have the resource resolver find the 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, 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

ResolvingObjectInputStream

public ResolvingObjectInputStream(org.apache.hivemind.ClassResolver resolver,
                                  java.io.InputStream input)
                           throws java.io.IOException
Throws:
java.io.IOException
Method Detail

resolveClass

protected java.lang.Class resolveClass(java.io.ObjectStreamClass v)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
Overrides the default implementation to have the resource resolver find the class.

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