org.jibx.schema.elements
Class CommonCompositorDefinition

java.lang.Object
  extended by org.jibx.schema.elements.SchemaBase
      extended by org.jibx.schema.elements.OpenAttrBase
          extended by org.jibx.schema.elements.AnnotatedBase
              extended by org.jibx.schema.elements.CommonCompositorBase
                  extended by org.jibx.schema.elements.CommonCompositorDefinition
All Implemented Interfaces:
IArity, IComponent
Direct Known Subclasses:
AllElement, ChoiceElement, SequenceElement

public abstract class CommonCompositorDefinition
extends CommonCompositorBase

Compositor for complex content model, including the special case of <all>. The subclasses implement the different models for how nested particles are combined.

Author:
Dennis M. Sosnoski

Field Summary
protected static long CHOICE_SEQUENCE_PARTICLE_MASK
          Mask for child elements allowed by <choice> and <sequence>.
private  FilteredSegmentList m_particleList
          Filtered list of composited particle elements.
 
Fields inherited from class org.jibx.schema.elements.CommonCompositorBase
s_allowedAttributes
 
Fields inherited from class org.jibx.schema.elements.SchemaBase
ALL_TYPE, ANNOTATION_TYPE, ANY_TYPE, ANYATTRIBUTE_TYPE, APPINFO_TYPE, ATTRIBUTE_TYPE, ATTRIBUTEGROUP_TYPE, CHOICE_TYPE, COMPLEXCONTENT_TYPE, COMPLEXTYPE_TYPE, DOCUMENTATION_TYPE, ELEMENT_MASKS, ELEMENT_NAMES, ELEMENT_TYPE, ENUMERATION_TYPE, EXTENSION_TYPE, FIELD_TYPE, FRACTIONDIGITS_TYPE, GROUP_TYPE, IMPORT_TYPE, INCLUDE_TYPE, KEY_TYPE, KEYREF_TYPE, LENGTH_TYPE, LIST_TYPE, MAXEXCLUSIVE_TYPE, MAXINCLUSIVE_TYPE, MAXLENGTH_TYPE, MINEXCLUSIVE_TYPE, MININCLUSIVE_TYPE, MINLENGTH_TYPE, NOTATION_TYPE, PATTERN_TYPE, REDEFINE_TYPE, RESTRICTION_TYPE, SCHEMA_TYPE, SELECTOR_TYPE, SEQUENCE_TYPE, SIMPLECONTENT_TYPE, SIMPLETYPE_TYPE, TOTALDIGITS_TYPE, UNION_TYPE, UNIQUE_TYPE, WHITESPACE_TYPE
 
Fields inherited from interface org.jibx.schema.IComponent
SCHEMA_NAMESPACE
 
Constructor Summary
protected CommonCompositorDefinition(int type, long mask)
          Constructor.
 
Method Summary
 FilteredSegmentList getParticleList()
          Get list of composited particles.
protected  void preset(IUnmarshallingContext ictx)
          Pre-set method to be called by data binding while parsing element start tag.
 
Methods inherited from class org.jibx.schema.elements.CommonCompositorBase
getMaxOccurs, getMinOccurs, prevalidate, setMaxOccurs, setMinOccurs
 
Methods inherited from class org.jibx.schema.elements.AnnotatedBase
getAnnotation, getId, setAnnotation, setId
 
Methods inherited from class org.jibx.schema.elements.OpenAttrBase
addExtraAttribute, clearExtraAttributes, compactChildren, detachChild, getChild, getChildCount, getChildIterator, getChildrenWritable, getExtraAttributes, preget, replaceChild, validateAttributes
 
Methods inherited from class org.jibx.schema.elements.SchemaBase
addNamespaceDeclaration, bit, clearNamespaceDeclarations, getExtension, getNamespaceDeclarations, getParent, getSchema, isGlobal, name, readNamespaces, setExtension, setParent, type, validate, validateAttributes, writeNamespaces
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CHOICE_SEQUENCE_PARTICLE_MASK

protected static long CHOICE_SEQUENCE_PARTICLE_MASK
Mask for child elements allowed by <choice> and <sequence>.


m_particleList

private final FilteredSegmentList m_particleList
Filtered list of composited particle elements.

Constructor Detail

CommonCompositorDefinition

protected CommonCompositorDefinition(int type,
                                     long mask)
Constructor.

Parameters:
type - element type
mask - mask for allowed particle elements
Method Detail

getParticleList

public FilteredSegmentList getParticleList()
Get list of composited particles.

Returns:
list

preset

protected void preset(IUnmarshallingContext ictx)
               throws JiBXException
Description copied from class: SchemaBase
Pre-set method to be called by data binding while parsing element start tag. The base class implementation just sets the parent element link and reads in any extra namespaces defined on the element. Subclasses which override this implementation must call the base implementation during their processing.

Overrides:
preset in class SchemaBase
Parameters:
ictx - unmarshalling context
Throws:
JiBXException - on error


Project Web Site