com.sun.xml.bind.v2.runtime.unmarshaller
Class Scope<BeanT,PropT,ItemT,PackT>

java.lang.Object
  extended by com.sun.xml.bind.v2.runtime.unmarshaller.Scope<BeanT,PropT,ItemT,PackT>

public final class Scope<BeanT,PropT,ItemT,PackT>
extends java.lang.Object

Holds the information about packing scope.

When no packing is started yet, all the fields should be set to null.


Field Summary
 UnmarshallingContext context
           
 
Method Summary
 void add(Accessor<BeanT,PropT> acc, Lister<BeanT,PropT,ItemT,PackT> lister, ItemT value)
          Adds a new item to this packing scope.
 void finish()
          Finishes up the current packing in progress (if any) and resets this object.
 boolean hasStarted()
          Returns true if this scope object is filled by a packing in progress.
 void reset()
          Initializes all the fields to null.
 void start(Accessor<BeanT,PropT> acc, Lister<BeanT,PropT,ItemT,PackT> lister)
          Starts the packing scope, without adding any item.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

context

public final UnmarshallingContext context
Method Detail

hasStarted

public boolean hasStarted()
Returns true if this scope object is filled by a packing in progress.


reset

public void reset()
Initializes all the fields to null.


finish

public void finish()
            throws AccessorException
Finishes up the current packing in progress (if any) and resets this object.

Throws:
AccessorException

add

public void add(Accessor<BeanT,PropT> acc,
                Lister<BeanT,PropT,ItemT,PackT> lister,
                ItemT value)
         throws org.xml.sax.SAXException
Adds a new item to this packing scope.

Throws:
org.xml.sax.SAXException

start

public void start(Accessor<BeanT,PropT> acc,
                  Lister<BeanT,PropT,ItemT,PackT> lister)
           throws org.xml.sax.SAXException
Starts the packing scope, without adding any item. This allows us to return an empty pack, thereby allowing the user to distinguish empty array vs null array.

Throws:
org.xml.sax.SAXException