public final class ReplicationStream
extends java.io.ObjectInputStream
ObjectInputStream that loads from the
class loader for this web application. This allows classes defined only
with the web application to be found correctly.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 |
|---|
ReplicationStream(java.io.InputStream stream,
java.lang.ClassLoader[] classLoaders)
Construct a new instance of CustomObjectInputStream
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
java.lang.Class<?> |
findExternalClass(java.lang.String name) |
java.lang.Class<?> |
findReplicationClass(java.lang.String name) |
java.lang.Class<?> |
resolveClass(java.io.ObjectStreamClass classDesc)
Load the local class equivalent of the specified stream class
description, by using the class loader assigned to this Context.
|
java.lang.Class<?> |
resolveClass(java.lang.String name) |
protected java.lang.Class<?> |
resolveProxyClass(java.lang.String[] interfaces)
ObjectInputStream.resolveProxyClass has some funky way of using
the incorrect class loader to resolve proxy classes, let's do it our way instead
|
available, 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, skipBytespublic ReplicationStream(java.io.InputStream stream,
java.lang.ClassLoader[] classLoaders)
throws java.io.IOException
stream - The input stream we will read fromclassLoaders - The class loader array used to instantiate objectsjava.io.IOException - if an input/output error occurspublic java.lang.Class<?> resolveClass(java.io.ObjectStreamClass classDesc)
throws java.lang.ClassNotFoundException,
java.io.IOException
resolveClass in class java.io.ObjectInputStreamclassDesc - Class description from the input streamjava.lang.ClassNotFoundException - if this class cannot be foundjava.io.IOException - if an input/output error occurspublic java.lang.Class<?> resolveClass(java.lang.String name)
throws java.lang.ClassNotFoundException,
java.io.IOException
java.lang.ClassNotFoundExceptionjava.io.IOExceptionprotected java.lang.Class<?> resolveProxyClass(java.lang.String[] interfaces)
throws java.io.IOException,
java.lang.ClassNotFoundException
resolveProxyClass in class java.io.ObjectInputStreamjava.io.IOExceptionjava.lang.ClassNotFoundExceptionpublic java.lang.Class<?> findReplicationClass(java.lang.String name)
throws java.lang.ClassNotFoundException,
java.io.IOException
java.lang.ClassNotFoundExceptionjava.io.IOExceptionpublic java.lang.Class<?> findExternalClass(java.lang.String name)
throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundExceptionpublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.io.ObjectInputclose in interface java.lang.AutoCloseableclose in class java.io.ObjectInputStreamjava.io.IOExceptionCopyright © 2000-2019 Apache Software Foundation. All Rights Reserved.