JBoss Marshalling 1.3.0.CR9

org.jboss.marshalling
Interface Externalizer

All Superinterfaces:
Serializable
All Known Implementing Classes:
AbstractExternalizer, Pair.Externalizer

public interface Externalizer
extends Serializable

A replacement serializer for an object class.


Method Summary
 Object createExternal(Class<?> subjectType, ObjectInput input, Creator defaultCreator)
          Create an instance of a type.
 void readExternal(Object subject, ObjectInput input)
          Read the external representation of an object.
 void writeExternal(Object subject, ObjectOutput output)
          Write the external representation of an object.
 

Method Detail

writeExternal

void writeExternal(Object subject,
                   ObjectOutput output)
                   throws IOException
Write the external representation of an object. The object's class and the externalizer's class will already have been written.

Parameters:
subject - the object to externalize
output - the output
Throws:
IOException - if an error occurs

createExternal

Object createExternal(Class<?> subjectType,
                      ObjectInput input,
                      Creator defaultCreator)
                      throws IOException,
                             ClassNotFoundException
Create an instance of a type. The object may then be initialized from input, or that may be deferred to the readExternal() method. Instances may simply delegate the task to the given Creator. Note that this method is called only on the leaf class, so externalizers for non-final classes that initialize the instance from the stream need to be aware of this.

Parameters:
subjectType - the type of object to create
input - the input
defaultCreator - the configured creator
Returns:
the new instance
Throws:
IOException - if an error occurs
ClassNotFoundException - if a class could not be found during read

readExternal

void readExternal(Object subject,
                  ObjectInput input)
                  throws IOException,
                         ClassNotFoundException
Read the external representation of an object. The object will already be instantiated, but may be uninitialized, when this method is called.

Parameters:
subject - the object to read
input - the input
Throws:
IOException - if an error occurs
ClassNotFoundException - if a class could not be found during read

JBoss Marshalling 1.3.0.CR9

Copyright © 2011 JBoss, a division of Red Hat, Inc.