Package com.tangosol.io
Class ResolvingObjectInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.ObjectInputStream
-
- com.tangosol.io.ResolvingObjectInputStream
-
- All Implemented Interfaces:
Resolving
,Closeable
,DataInput
,ObjectInput
,ObjectStreamConstants
,AutoCloseable
public class ResolvingObjectInputStream extends ObjectInputStream implements Resolving
Provides an ObjectInputStream that uses a caller provided ClassLoader to resolve classes during objects deserialization.- Author:
- gg 2001.12.26
-
-
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, SERIAL_FILTER_PERMISSION, 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
Constructors Constructor Description ResolvingObjectInputStream(InputStream stream, ClassLoader loader)
Create an ObjectInputStream that reads from the specified InputStream using the specified ClassLoader to resolve classes.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Class
resolveClass(ObjectStreamClass descriptor)
Load the local class equivalent of the specified stream class description.-
Methods inherited from class java.io.ObjectInputStream
available, close, defaultReadObject, enableResolveObject, getObjectInputFilter, 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, setObjectInputFilter, skipBytes
-
Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
-
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(InputStream stream, ClassLoader loader) throws IOException
Create an ObjectInputStream that reads from the specified InputStream using the specified ClassLoader to resolve classes.- Parameters:
stream
- the underlyingInputStream
from which to readloader
- theClassLoader
to use for class resolution- Throws:
IOException
- if an exception occurred in the underlying stream.- See Also:
ObjectInputStream
-
-
Method Detail
-
resolveClass
protected Class resolveClass(ObjectStreamClass descriptor) throws IOException, ClassNotFoundException
Load the local class equivalent of the specified stream class description.- Overrides:
resolveClass
in classObjectInputStream
- Parameters:
descriptor
- serialization descriptor for a class- Returns:
- a Class object corresponding to
descriptor
- Throws:
IOException
- if an exception occurred in the underlying stream.ClassNotFoundException
- if the corresponding class cannot be found.
-
-