Package org.glassfish.common.util
Class ObjectInputStreamWithLoader
- java.lang.Object
-
- java.io.InputStream
-
- java.io.ObjectInputStream
-
- org.glassfish.common.util.ObjectInputStreamWithLoader
-
- All Implemented Interfaces:
Closeable
,DataInput
,ObjectInput
,ObjectStreamConstants
,AutoCloseable
- Direct Known Subclasses:
JavaEEObjectInputStream
@Service public class ObjectInputStreamWithLoader extends ObjectInputStream
This subclass of ObjectInputStream delegates loading of classes to an existing ClassLoader.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.io.ObjectInputStream
ObjectInputStream.GetField
-
-
Field Summary
Fields Modifier and Type Field Description protected ClassLoader
loader
-
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 ObjectInputStreamWithLoader(InputStream in, ClassLoader loader)
Loader must be non-null;
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Class
resolveClass(ObjectStreamClass classDesc)
Use the given ClassLoader rather than using the system class-
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
-
-
-
-
Field Detail
-
loader
protected ClassLoader loader
-
-
Constructor Detail
-
ObjectInputStreamWithLoader
public ObjectInputStreamWithLoader(InputStream in, ClassLoader loader) throws IOException
Loader must be non-null;- Throws:
IOException
- on io errorStreamCorruptedException
- on a corrupted stream
-
-
Method Detail
-
resolveClass
protected Class resolveClass(ObjectStreamClass classDesc) throws IOException, ClassNotFoundException
Use the given ClassLoader rather than using the system class- Overrides:
resolveClass
in classObjectInputStream
- Throws:
ClassNotFoundException
- if class can not be loadedIOException
-
-