public final class ReplicationStream extends 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.ObjectInputStream.GetFieldbaseWireHandle, 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(InputStream stream,
ClassLoader[] classLoaders)
Construct a new instance of CustomObjectInputStream
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
Class<?> |
findExternalClass(String name) |
Class<?> |
findReplicationClass(String name) |
Class<?> |
resolveClass(ObjectStreamClass classDesc)
Load the local class equivalent of the specified stream class
description, by using the class loader assigned to this Context.
|
Class<?> |
resolveClass(String name) |
protected Class<?> |
resolveProxyClass(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, skipBytesmark, markSupported, read, reset, skipclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitread, skippublic ReplicationStream(InputStream stream, ClassLoader[] classLoaders) throws IOException
stream - The input stream we will read fromclassLoaders - The class loader array used to instantiate objectsIOException - if an input/output error occurspublic Class<?> resolveClass(ObjectStreamClass classDesc) throws ClassNotFoundException, IOException
resolveClass in class ObjectInputStreamclassDesc - Class description from the input streamClassNotFoundException - if this class cannot be foundIOException - if an input/output error occurspublic Class<?> resolveClass(String name) throws ClassNotFoundException
ClassNotFoundExceptionprotected Class<?> resolveProxyClass(String[] interfaces) throws IOException, ClassNotFoundException
resolveProxyClass in class ObjectInputStreamIOExceptionClassNotFoundExceptionpublic Class<?> findReplicationClass(String name) throws ClassNotFoundException
ClassNotFoundExceptionpublic Class<?> findExternalClass(String name) throws ClassNotFoundException
ClassNotFoundExceptionpublic void close()
throws IOException
close in interface Closeableclose in interface ObjectInputclose in interface AutoCloseableclose in class ObjectInputStreamIOExceptionCopyright © 2000-2021 Apache Software Foundation. All Rights Reserved.