Class AliasingObjectInputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.DataInput, java.io.ObjectInput, java.io.ObjectStreamConstants, java.lang.AutoCloseable

    public class AliasingObjectInputStream
    extends ModuleObjectInputStream
    This ObjectInputStream will use the defined alias class when deserializing, or if not defined or class doesn't match alias, then this ObjectInputStream will deserialize using the local class descriptor if the descriptor from the serialized stream doesn't have an identical serial version UID. This will ensure that the local descriptor is used to prevent incompatible classes due to Serializable class definition or path changes between versions.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.io.ObjectInputStream

        java.io.ObjectInputStream.GetField
    • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.io.ObjectStreamClass readClassDescriptor()  
      • Methods inherited from class java.io.ObjectInputStream

        available, defaultReadObject, enableResolveObject, getObjectInputFilter, read, read, readBoolean, readByte, readChar, 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
    • Constructor Detail

      • AliasingObjectInputStream

        public AliasingObjectInputStream​(java.io.InputStream is,
                                         ModuleManager moduleManager)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • AliasingObjectInputStream

        public AliasingObjectInputStream​(java.io.InputStream is,
                                         ModuleManager moduleManager,
                                         java.util.Map<java.lang.String,​java.lang.String> aliasClassPaths)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • readClassDescriptor

        protected java.io.ObjectStreamClass readClassDescriptor()
                                                         throws java.io.IOException,
                                                                java.lang.ClassNotFoundException
        Overrides:
        readClassDescriptor in class java.io.ObjectInputStream
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException