August 2003
Intermediate to advanced
928 pages
32h 1m
English
Formatter
This is the abstract base class for all
runtime
serialization formatters. It implements the
IFormatter interface, which provides the
properties that select the binder, surrogates, and streaming context
of the formatter. This interface also implements the
Serialize( ) and Deserialize( )
methods.
Additionally, the Formatter manages the queue of
objects to serialize and provides a set of Write*
methods for writing types to the stream.
public abstract class Formatter : IFormatter { // Protected Constructors protected Formatter( ); // Protected Instance Fields protected ObjectIDGenerator m_idGenerator; protected Queue m_objectQueue; // Public Instance Properties public abstract SerializationBinder Binder{set; get; } //implements IFormatter public abstract StreamingContext Context{set; get; } // implements IFormatter public abstract ISurrogateSelector SurrogateSelector{set; get; } // implements IFormatter // Public Instance Methods public abstract object Deserialize(System.IO.StreamserializationStream) // implements IFormatter public abstract void Serialize(System.IO.StreamserializationStream, objectgraph) // implements IFormatter // Protected Instance Methods protected virtual object GetNext(out longobjID); protected virtual long Schedule(objectobj); protected abstract void WriteArray(objectobj, stringname, TypememberType); protected abstract void WriteBoolean(boolval, stringname); protected abstract void WriteByte(byteval, stringname); protected abstract ...