java.lang.Object
java.io.InputStream
java.io.ObjectInputStream
org.refcodes.io.SerializableObjectInputStream
- All Implemented Interfaces:
Closeable
,DataInput
,ObjectInput
,ObjectStreamConstants
,AutoCloseable
The
SerializableObjectInputStream
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
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
ConstructorDescriptionInstantiates a new serializable object input stream impl. -
Method Summary
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
Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, 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 Details
-
SerializableObjectInputStream
Instantiates a new serializable object input stream impl.- Parameters:
in
- the in- Throws:
IOException
- Signals that an I/O exception has occurred.StreamCorruptedException
- the stream corrupted exception
-
-
Method Details
-
resolveClass
- Overrides:
resolveClass
in classObjectInputStream
- Throws:
ClassNotFoundException
IOException
-