com.gargoylesoftware.base.io
Class CondensedObjectOutputStream
java.lang.Object
java.io.OutputStream
java.io.ObjectOutputStream
com.gargoylesoftware.base.io.CondensedObjectOutputStream
- All Implemented Interfaces:
- DataOutput, ObjectOutput, ObjectStreamConstants
- public class CondensedObjectOutputStream
- extends ObjectOutputStream
A specialized subclass of ObjectOutputStream that is used to serialize
objects. This stream will remove duplicate objects from the stream in
order to shrink the resulting byte stream.
Only objects of the following types will be condensed: Character, Double,
Integer, Long, Short and String. The biggest benefit will come from
duplicate Strings.
- Version:
- $Revision: 1.4 $
- Author:
- Mike Bowler
Fields inherited from interface java.io.ObjectStreamConstants |
baseWireHandle, PROTOCOL_VERSION_1, PROTOCOL_VERSION_2, SC_BLOCK_DATA, SC_EXTERNALIZABLE, SC_SERIALIZABLE, SC_WRITE_METHOD, STREAM_MAGIC, STREAM_VERSION, SUBCLASS_IMPLEMENTATION_PERMISSION, SUBSTITUTION_PERMISSION, TC_ARRAY, TC_BASE, TC_BLOCKDATA, TC_BLOCKDATALONG, TC_CLASS, TC_CLASSDESC, TC_ENDBLOCKDATA, TC_EXCEPTION, TC_LONGSTRING, TC_MAX, TC_NULL, TC_OBJECT, TC_PROXYCLASSDESC, TC_REFERENCE, TC_RESET, TC_STRING |
Method Summary |
protected Object |
replaceObject(Object object)
Overrides the superclass to perform substitutions of duplicate
immutable objects. |
Methods inherited from class java.io.ObjectOutputStream |
annotateClass, annotateProxyClass, close, defaultWriteObject, drain, enableReplaceObject, flush, putFields, reset, useProtocolVersion, write, write, write, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeClassDescriptor, writeDouble, writeFields, writeFloat, writeInt, writeLong, writeObject, writeObjectOverride, writeShort, writeStreamHeader, writeUnshared, writeUTF |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CondensedObjectOutputStream
public CondensedObjectOutputStream(OutputStream stream)
throws IOException
- Create the stream
- Parameters:
stream
- The output stream that we are wrapping
- Throws:
IOException
- If the superclass throws an IOException in it's
constructor.
replaceObject
protected Object replaceObject(Object object)
- Overrides the superclass to perform substitutions of duplicate
immutable objects.
- Parameters:
object
- The object to be serialized
- Returns:
- Either the object that was passed in or an identical object
that had previously been passed in.
Copyright © 1998-2005 Gargoyle Software Inc.. All Rights Reserved.