Class SerializableObjectInputStreamImpl



  • public class SerializableObjectInputStreamImpl
    extends java.io.ObjectInputStream
    The SerializableObjectInputStreamImpl extends an ordinary ObjectInputStream to also resolve primitive types. In former JDKs (not tested with current ones), primitive types caused problems when deserializing. This class addresses and patches this issue.

    Interesting enough that there were already virtual class definitions for the primitive types ("boolean.class" - Boolean.TYPE, "byte.class" - Byte.TYPE, "char.clas" - Character.TYPE, "int.class" - Integer.TYPE, "double.class" - Double.TYPE, "long.class" - Long.TYPE, float.class" - Float.TYPE).

    • 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
    • Constructor Summary

      Constructors 
      Constructor Description
      SerializableObjectInputStreamImpl​(java.io.InputStream in)
      Instantiates a new serializable object input stream impl.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Class<?> resolveClass​(java.io.ObjectStreamClass aClass)
      • Methods inherited from class java.io.InputStream

        mark, markSupported, read, readAllBytes, 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
      • 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
    • Constructor Detail

      • SerializableObjectInputStreamImpl

        public SerializableObjectInputStreamImpl​(java.io.InputStream in)
                                          throws java.io.IOException,
                                                 java.io.StreamCorruptedException
        Instantiates a new serializable object input stream impl.
        Parameters:
        in - the in
        Throws:
        java.io.IOException - Signals that an I/O exception has occurred.
        java.io.StreamCorruptedException - the stream corrupted exception
    • Method Detail

      • resolveClass

        public java.lang.Class<?> resolveClass​(java.io.ObjectStreamClass aClass)
                                        throws java.lang.ClassNotFoundException,
                                               java.io.IOException
        Overrides:
        resolveClass in class java.io.ObjectInputStream
        Throws:
        java.lang.ClassNotFoundException
        java.io.IOException