|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.io.OutputStream
java.io.ObjectOutputStream
com.sleepycat.bind.serial.SerialOutput
public class SerialOutput
A specialized ObjectOutputStream
that stores class description
information in a ClassCatalog
. It is used by
SerialBinding
.
This class is used instead of an ObjectOutputStream
, which it
extends, to write a compact object stream. For writing objects to a
database normally one of the serial binding classes is used. SerialOutput
is used when an ObjectOutputStream
is needed along
with compact storage. A ClassCatalog
must be supplied, however, to
stored shared class descriptions.
The ClassCatalog
is used to store class definitions rather than
embedding these into the stream. Instead, a class format identifier is
embedded into the stream. This identifier is then used by SerialInput
to load the class format to deserialize the object.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.io.ObjectOutputStream |
---|
java.io.ObjectOutputStream.PutField |
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, 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 | |
---|---|
SerialOutput(java.io.OutputStream out,
ClassCatalog classCatalog)
Creates a serial output stream. |
Method Summary | |
---|---|
static byte[] |
getStreamHeader()
Returns the fixed stream header used for all serialized streams in PROTOCOL_VERSION_2 format. |
protected void |
writeClassDescriptor(java.io.ObjectStreamClass classdesc)
|
Methods inherited from class java.io.ObjectOutputStream |
---|
annotateClass, annotateProxyClass, close, defaultWriteObject, drain, enableReplaceObject, flush, putFields, replaceObject, reset, useProtocolVersion, write, write, write, writeBoolean, writeByte, writeBytes, writeChar, writeChars, 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 |
Constructor Detail |
---|
public SerialOutput(java.io.OutputStream out, ClassCatalog classCatalog) throws java.io.IOException
out
- is the output stream to which the compact serialized objects
will be written.classCatalog
- is the catalog to which the class descriptions for
the serialized objects will be written.
java.io.IOException
Method Detail |
---|
protected void writeClassDescriptor(java.io.ObjectStreamClass classdesc) throws java.io.IOException
writeClassDescriptor
in class java.io.ObjectOutputStream
java.io.IOException
public static byte[] getStreamHeader()
SerialOutput
always uses PROTOCOL_VERSION_2 serialization format
to guarantee that this header is fixed. SerialBinding
removes
this header from serialized streams automatically.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |