Apache CXF API

org.apache.cxf.aegis.type.encoded
Class MarshalRegistry

java.lang.Object
  extended by org.apache.cxf.aegis.type.encoded.MarshalRegistry
All Implemented Interfaces:
Iterable<Object>

public class MarshalRegistry
extends Object
implements Iterable<Object>

MarshalRegistry maintains tracks which object instances have been marshaled and which objects still need to be marshaled.

Note: only the StructType register objects with this class.


Constructor Summary
MarshalRegistry()
           
 
Method Summary
static MarshalRegistry get(Context context)
          Get the MarshalRegistry stored in the context, and if necessary create a new one.
 String getInstanceId(Object instance)
           
 Iterator<Object> iterator()
          Returns an iterator over the object instances that have not been marshalled yet.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MarshalRegistry

public MarshalRegistry()
Method Detail

get

public static MarshalRegistry get(Context context)
Get the MarshalRegistry stored in the context, and if necessary create a new one.

Parameters:
context - the unmarshal context
Returns:
the SoapRefRegistry; never null

getInstanceId

public String getInstanceId(Object instance)

iterator

public Iterator<Object> iterator()
Returns an iterator over the object instances that have not been marshalled yet. As each instance in this iterator is written, it may contain references to additional objects that have not been written. Those references objects will be added to the end of this iterator, so the "list" that is being iterated over grows as the iteration preceeds.

When an instance is returned from this iterator it is marked as marshalled.

Specified by:
iterator in interface Iterable<Object>
Returns:
an iterator over the objects to be marshalled.

Apache CXF API

Apache CXF