Package org.apache.activemq.util
Class ClassLoadingAwareObjectInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.ObjectInputStream
-
- org.apache.activemq.util.ClassLoadingAwareObjectInputStream
-
- All Implemented Interfaces:
Closeable
,DataInput
,ObjectInput
,ObjectStreamConstants
,AutoCloseable
public class ClassLoadingAwareObjectInputStream extends ObjectInputStream
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.io.ObjectInputStream
ObjectInputStream.GetField
-
-
Field Summary
Fields Modifier and Type Field Description static String[]
serializablePackages
-
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(InputStream in)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addTrustedPackage(String trustedPackage)
List<String>
getTrustedPackages()
static boolean
isAllAllowed()
boolean
isTrustAllPackages()
static Class<?>
loadSimpleType(String name)
Load a simple typeprotected Class<?>
resolveClass(ObjectStreamClass classDesc)
protected Class<?>
resolveProxyClass(String[] interfaces)
void
setTrustAllPackages(boolean trustAllPackages)
void
setTrustedPackages(List<String> trustedPackages)
-
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
-
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
-
serializablePackages
public static final String[] serializablePackages
-
-
Constructor Detail
-
ClassLoadingAwareObjectInputStream
public ClassLoadingAwareObjectInputStream(InputStream in) throws IOException
- Throws:
IOException
-
-
Method Detail
-
resolveClass
protected Class<?> resolveClass(ObjectStreamClass classDesc) throws IOException, ClassNotFoundException
- Overrides:
resolveClass
in classObjectInputStream
- Throws:
IOException
ClassNotFoundException
-
resolveProxyClass
protected Class<?> resolveProxyClass(String[] interfaces) throws IOException, ClassNotFoundException
- Overrides:
resolveProxyClass
in classObjectInputStream
- Throws:
IOException
ClassNotFoundException
-
isAllAllowed
public static boolean isAllAllowed()
-
loadSimpleType
public static Class<?> loadSimpleType(String name)
Load a simple type- Parameters:
name
- the name of the class to load- Returns:
- the class or null if it could not be loaded
-
addTrustedPackage
public void addTrustedPackage(String trustedPackage)
-
isTrustAllPackages
public boolean isTrustAllPackages()
-
setTrustAllPackages
public void setTrustAllPackages(boolean trustAllPackages)
-
-