Package com.swiftmq.tools.security
Class SecureClassLoaderObjectInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.ObjectInputStream
-
- com.swiftmq.tools.security.SecureClassLoaderObjectInputStream
-
- All Implemented Interfaces:
java.io.Closeable
,java.io.DataInput
,java.io.ObjectInput
,java.io.ObjectStreamConstants
,java.lang.AutoCloseable
public class SecureClassLoaderObjectInputStream extends java.io.ObjectInputStream
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String[]
serializablePackages
static java.lang.String[]
trusted
-
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 SecureClassLoaderObjectInputStream(java.io.InputStream in)
SecureClassLoaderObjectInputStream(java.io.InputStream in, java.lang.ClassLoader inLoader)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addTrustedPackage(java.lang.String trustedPackage)
java.util.List<java.lang.String>
getTrustedPackages()
static boolean
isAllAllowed()
boolean
isTrustAllPackages()
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)
void
setTrustAllPackages(boolean trustAllPackages)
void
setTrustedPackages(java.util.List<java.lang.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
-
-
-
-
Constructor Detail
-
SecureClassLoaderObjectInputStream
public SecureClassLoaderObjectInputStream(java.io.InputStream in) throws java.io.IOException
- Throws:
java.io.IOException
-
SecureClassLoaderObjectInputStream
public SecureClassLoaderObjectInputStream(java.io.InputStream in, java.lang.ClassLoader inLoader) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
isAllAllowed
public static boolean isAllAllowed()
-
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 null if it could not be loaded
-
resolveClass
protected java.lang.Class<?> resolveClass(java.io.ObjectStreamClass classDesc) throws java.io.IOException, java.lang.ClassNotFoundException
- Overrides:
resolveClass
in classjava.io.ObjectInputStream
- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
resolveProxyClass
protected java.lang.Class<?> resolveProxyClass(java.lang.String[] interfaces) throws java.io.IOException, java.lang.ClassNotFoundException
- Overrides:
resolveProxyClass
in classjava.io.ObjectInputStream
- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
getTrustedPackages
public java.util.List<java.lang.String> getTrustedPackages()
-
setTrustedPackages
public void setTrustedPackages(java.util.List<java.lang.String> trustedPackages)
-
addTrustedPackage
public void addTrustedPackage(java.lang.String trustedPackage)
-
isTrustAllPackages
public boolean isTrustAllPackages()
-
setTrustAllPackages
public void setTrustAllPackages(boolean trustAllPackages)
-
-