Package org.jboss.marshalling
Class ChainingObjectTable
java.lang.Object
org.jboss.marshalling.ChainingObjectTable
- All Implemented Interfaces:
ObjectTable
An object table that multiplexes up to 256 class tables. The protocol works by prepending the custom object table
with an identifier byte.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.jboss.marshalling.ObjectTable
ObjectTable.Writer -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetObjectWriter(Object obj) Determine whether the given object reference is a valid predefined reference.readObject(Unmarshaller unmarshaller) Read an instance from the stream.
-
Constructor Details
-
ChainingObjectTable
Construct a new instance. The given array may be sparse, but it may not be more than 256 elements in length. Object tables are checked in order of increasing array index.- Parameters:
objectTables- the object tables to delegate to
-
-
Method Details
-
getObjectWriter
Determine whether the given object reference is a valid predefined reference.- Specified by:
getObjectWriterin interfaceObjectTable- Parameters:
obj- the candidate object- Returns:
- the object writer, or
nullto use the default mechanism - Throws:
IOException- if an I/O error occurs
-
readObject
Read an instance from the stream. The instance will have been written by theObjectTable.getObjectWriter(Object)method'sWriterinstance, as defined above.- Specified by:
readObjectin interfaceObjectTable- Parameters:
unmarshaller- the unmarshaller to read from- Returns:
- the object instance
- Throws:
IOException- if an I/O error occursClassNotFoundException- if a class could not be found
-