net.sf.fikin.classmarshaling
Class MarshaledObjectInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.ObjectInputStream
          extended by net.sf.fikin.classmarshaling.MarshaledObjectInputStream
All Implemented Interfaces:
java.io.Closeable, java.io.DataInput, java.io.ObjectInput, java.io.ObjectStreamConstants

public class MarshaledObjectInputStream
extends java.io.ObjectInputStream

An ObjectInputStream which is resolving needed classes (during de-serialization) via the supplied classloader.

Used by MarshaledObject.get(). created on Aug 2, 2005

Since:
Version:
$Revision: 1.1 $
Author:
fiykov

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
MarshaledObjectInputStream(java.io.InputStream in, java.lang.ClassLoader loader)
          Initialize the object
 
Method Summary
protected  java.lang.Class resolveClass(java.io.ObjectStreamClass desc)
          lookup for the class using the classloader
 
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

MarshaledObjectInputStream

public MarshaledObjectInputStream(java.io.InputStream in,
                                  java.lang.ClassLoader loader)
                           throws java.io.IOException
Initialize the object

Parameters:
in - is the serialized object input stream
loader - is the classloader to use to resolve needed classes
Throws:
java.io.IOException
Method Detail

resolveClass

protected java.lang.Class resolveClass(java.io.ObjectStreamClass desc)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
lookup for the class using the classloader

Overrides:
resolveClass in class java.io.ObjectInputStream
Parameters:
desc - is a class description placed in the serialized stream
Returns:
needed Class object
Throws:
java.lang.ClassNotFoundException - if the class could not be found
java.io.IOException - during stream reading


Copyright © 2007 Nikolay Fiykov. All Rights Reserved.