Package org.apache.qpid.jms.util
Class ClassLoadingAwareObjectInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.ObjectInputStream
-
- org.apache.qpid.jms.util.ClassLoadingAwareObjectInputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.io.DataInput,java.io.ObjectInput,java.io.ObjectStreamConstants,java.lang.AutoCloseable
public class ClassLoadingAwareObjectInputStream extends java.io.ObjectInputStream
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceClassLoadingAwareObjectInputStream.TrustedClassFilterSecurity Filter used to filter classes that the application deems to be insecure, this filter is not applied to the class instances for the primitive types, and array types are narrowed to the component type of the array before being passed into this filter.
-
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 ClassLoadingAwareObjectInputStream(java.io.InputStream in, ClassLoadingAwareObjectInputStream.TrustedClassFilter filter)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.Class<?>loadSimpleType(java.lang.String name)Load a simple typeprotected java.lang.Class<?>resolveClass(java.io.ObjectStreamClass classDesc)protected java.lang.Class<?>resolveProxyClass(java.lang.String[] interfaces)-
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, setObjectInputFilter, skipBytes
-
Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
-
-
-
-
Constructor Detail
-
ClassLoadingAwareObjectInputStream
public ClassLoadingAwareObjectInputStream(java.io.InputStream in, ClassLoadingAwareObjectInputStream.TrustedClassFilter filter) throws java.io.IOException- Throws:
java.io.IOException
-
-
Method Detail
-
resolveClass
protected java.lang.Class<?> resolveClass(java.io.ObjectStreamClass classDesc) throws java.io.IOException, java.lang.ClassNotFoundException- Overrides:
resolveClassin classjava.io.ObjectInputStream- Throws:
java.io.IOExceptionjava.lang.ClassNotFoundException
-
resolveProxyClass
protected java.lang.Class<?> resolveProxyClass(java.lang.String[] interfaces) throws java.io.IOException, java.lang.ClassNotFoundException- Overrides:
resolveProxyClassin classjava.io.ObjectInputStream- Throws:
java.io.IOExceptionjava.lang.ClassNotFoundException
-
loadSimpleType
public static java.lang.Class<?> loadSimpleType(java.lang.String name)
Load a simple type- Parameters:
name- the name of the class to load- Returns:
- the class or
nullif it could not be loaded
-
-