public class RMIObjectInputStream
extends java.io.ObjectInputStream
RMIObjectOutputStream
. Specialized behavior includes class
resolution using RMIClassLoader
, and caching of class
descriptors.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 and Description |
---|
RMIObjectInputStream(java.io.InputStream in)
Constructs a new RMIObjectInputStream that ready from the
specified
InputStream . |
Modifier and Type | Method and Description |
---|---|
protected java.io.ObjectStreamClass |
readClassDescriptor()
Implementation of the
ObjectInputStream.readClassDescriptor() callback. |
protected void |
readStreamHeader()
Implementation of the
ObjectInputStream.readStreamHeader() callback. |
protected java.lang.Class |
resolveClass(java.io.ObjectStreamClass desc)
Implementation of the
ObjectInputStream.resolveClass(ObjectStreamClass) callback. |
protected java.lang.Class |
resolveProxyClass(java.lang.String[] interfaces)
Implementation of the
ObjectInputStream.resolveProxyClass(String[]) callback. |
available, close, defaultReadObject, enableResolveObject, read, read, readBoolean, readByte, readChar, readDouble, readFields, readFloat, readFully, readFully, readInt, readLine, readLong, readObject, readObjectOverride, readShort, readUnshared, readUnsignedByte, readUnsignedShort, readUTF, registerValidation, resolveObject, skipBytes
public RMIObjectInputStream(java.io.InputStream in) throws java.io.IOException
InputStream
.in
- the InputStream
to use for inputjava.io.IOException
protected java.lang.Class resolveClass(java.io.ObjectStreamClass desc) throws java.io.IOException, java.lang.ClassNotFoundException
ObjectInputStream.resolveClass(ObjectStreamClass)
callback.
This implementation delegates to RMIClassLoader
.resolveClass
in class java.io.ObjectInputStream
desc
- the ObjectStreamClass
serialized
representation of the class objectClass
object corresponding to the
serialized class objectjava.io.IOException
- if there is an error with the underlying streamjava.lang.ClassNotFoundException
- if the serialized class cannot
be locatedprotected java.lang.Class resolveProxyClass(java.lang.String[] interfaces) throws java.io.IOException, java.lang.ClassNotFoundException
ObjectInputStream.resolveProxyClass(String[])
callback. This
implementation delegates to RMIClassLoader
.resolveProxyClass
in class java.io.ObjectInputStream
interfaces
- the interfaces implemented by the serialized
proxy classClass
object corresponding to the
serialized class objectjava.io.IOException
- if there is an error with the underlying streamjava.lang.ClassNotFoundException
- if any of the serialized
interfaces cannot be locatedprotected java.io.ObjectStreamClass readClassDescriptor() throws java.io.IOException, java.lang.ClassNotFoundException
ObjectInputStream.readClassDescriptor()
callback. This
implementation reads a class id from the underlying input
stream and either delegates to its superclass to read in a full
class descriptor or uses the id to return a previosuly read
class descriptor.readClassDescriptor
in class java.io.ObjectInputStream
ObjectStreamClass
java.io.IOException
java.lang.ClassNotFoundException
protected void readStreamHeader()
ObjectInputStream.readStreamHeader()
callback. This
implementation is specifically overridden to do nothing. See
ObjectOutputStream.writeStreamHeader()
for
details.readStreamHeader
in class java.io.ObjectInputStream