Berkeley DB
version 5.2.28

com.sleepycat.bind.serial
Class SerialInput

java.lang.Object
  extended by java.io.InputStream
      extended by java.io.ObjectInputStream
          extended by com.sleepycat.bind.serial.SerialInput
All Implemented Interfaces:
Closeable, DataInput, ObjectInput, ObjectStreamConstants

public class SerialInput
extends ObjectInputStream

A specialized ObjectInputStream that gets class description information from a ClassCatalog. It is used by SerialBinding.

This class is used instead of an ObjectInputStream, which it extends, to read an object stream written by the SerialOutput class. For reading objects from a database normally one of the serial binding classes is used. SerialInput is used when an ObjectInputStream is needed along with compact storage. A ClassCatalog must be supplied, however, to stored shared class descriptions.

See Also:
Class Evolution

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, 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
SerialInput(InputStream in, ClassCatalog classCatalog)
          Creates a serial input stream.
SerialInput(InputStream in, ClassCatalog classCatalog, ClassLoader classLoader)
          Creates a serial input stream.
 
Method Summary
protected  ObjectStreamClass readClassDescriptor()
           
protected  Class resolveClass(ObjectStreamClass desc)
           
 
Methods inherited from class java.io.ObjectInputStream
available, close, defaultReadObject, enableResolveObject, read, read, readBoolean, readByte, readChar, readDouble, readFields, readFloat, readFully, readFully, readInt, readLine, readLong, readObject, readObjectOverride, readShort, readStreamHeader, readUnshared, readUnsignedByte, readUnsignedShort, readUTF, registerValidation, resolveObject, resolveProxyClass, skipBytes
 
Methods inherited from class java.io.InputStream
mark, markSupported, read, reset, skip
 
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

SerialInput

public SerialInput(InputStream in,
                   ClassCatalog classCatalog)
            throws IOException
Creates a serial input stream.

Parameters:
in - is the input stream from which compact serialized objects will be read.
classCatalog - is the catalog containing the class descriptions for the serialized objects.
Throws:
IOException

SerialInput

public SerialInput(InputStream in,
                   ClassCatalog classCatalog,
                   ClassLoader classLoader)
            throws IOException
Creates a serial input stream.

Parameters:
in - is the input stream from which compact serialized objects will be read.
classCatalog - is the catalog containing the class descriptions for the serialized objects.
classLoader - is the class loader to use, or null if a default class loader should be used.
Throws:
IOException
Method Detail

readClassDescriptor

protected ObjectStreamClass readClassDescriptor()
                                         throws IOException,
                                                ClassNotFoundException
Overrides:
readClassDescriptor in class ObjectInputStream
Throws:
IOException
ClassNotFoundException

resolveClass

protected Class resolveClass(ObjectStreamClass desc)
                      throws IOException,
                             ClassNotFoundException
Overrides:
resolveClass in class ObjectInputStream
Throws:
IOException
ClassNotFoundException

Berkeley DB
version 5.2.28

Copyright (c) 1996, 2011 Oracle and/or its affiliates. All rights reserved.