org.jibx.schema.elements
Class ComplexTypeElement

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.CommonTypeDefinition
                  extended by org.jibx.schema.elements.ComplexTypeElement
All Implemented Interfaces:
IComplexStructure, IComponent, INamed

public class ComplexTypeElement
extends CommonTypeDefinition
implements IComplexStructure

complexType element definition.

Author:
Dennis M. Sosnoski

Field Summary
private  long ANYATTRIBUTE_MASK
          Mask bits for attribute child elements.
private  long ATTRIBUTE_MASK
          Mask bits for attribute child elements.
private  long CONTENT_DEFINITION_MASK
          Mask bits for content definition child elements.
private  long CONTENT_TYPE_MASK
          Mask bits for content type child elements.
private  java.lang.Boolean m_abstract
          'abstract' attribute value.
private  FilteredSegmentList m_anyAttributeList
          Filtered list of anyAttribute definitions (zero or one, only if no content type).
private  FilteredSegmentList m_attributeList
          Filtered list of attribute definitions (only if no content type).
private  AllEnumSet m_block
          'block' attribute value.
private  FilteredSegmentList m_contentDefinitionList
          Filtered list of direct content definition (group reference or compositor, one only, only if no content type).
private  FilteredSegmentList m_contentTypeList
          Filtered list of content type definition (simpleContent or complexContent, one only and only if no direct content definition).
private  AllEnumSet m_final
          'final' attribute value.
private  java.lang.Boolean m_mixed
          'mixed' attribute value.
static StringArray s_allowedAttributes
          List of allowed attribute names.
 
Fields inherited from class org.jibx.schema.elements.CommonTypeDefinition
m_qname
 
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
ComplexTypeElement()
          Constructor.
 
Method Summary
 java.lang.Boolean getAbstract()
          Get 'abstract' attribute value.
 AnyAttributeElement getAnyAttribute()
          Get anyAttribute child element.
 FilteredSegmentList getAttributeList()
          Get list of attribute child elements.
 AllEnumSet getBlock()
          Get 'block' attribute value.
 CommonCompositorDefinition getContentDefinition()
          Get content definition particle.
 CommonContentBase getContentType()
          Get content type element.
 AllEnumSet getFinal()
          Get 'final' attribute value.
 java.lang.Boolean getMixed()
          Get 'mixed' attribute value.
 boolean isComplexType()
          Check if a complex type definition.
 boolean isPredefinedType()
          Check if a predefined type definition.
protected  void preset(IUnmarshallingContext ictx)
          Pre-set method to be called by data binding while parsing element start tag.
 void prevalidate(ValidationContext vctx)
          Prevalidate component information.
 void setAbstract(java.lang.Boolean abs)
          Set 'abstract' attribute value.
 void setAnyAttribute(AnyAttributeElement element)
          Set anyAttribute child element.
 void setContentDefinition(CommonCompositorDefinition element)
          Set content definition particle.
 void setContentType(CommonContentBase element)
          Set content type element.
 void setMixed(java.lang.Boolean mixed)
          Set 'mixed' attribute value.
 
Methods inherited from class org.jibx.schema.elements.CommonTypeDefinition
getName, getQName, setName
 
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

s_allowedAttributes

public static final StringArray s_allowedAttributes
List of allowed attribute names.


CONTENT_TYPE_MASK

private long CONTENT_TYPE_MASK
Mask bits for content type child elements.


CONTENT_DEFINITION_MASK

private long CONTENT_DEFINITION_MASK
Mask bits for content definition child elements.


ATTRIBUTE_MASK

private long ATTRIBUTE_MASK
Mask bits for attribute child elements.


ANYATTRIBUTE_MASK

private long ANYATTRIBUTE_MASK
Mask bits for attribute child elements.


m_contentTypeList

private final FilteredSegmentList m_contentTypeList
Filtered list of content type definition (simpleContent or complexContent, one only and only if no direct content definition).


m_contentDefinitionList

private final FilteredSegmentList m_contentDefinitionList
Filtered list of direct content definition (group reference or compositor, one only, only if no content type).


m_attributeList

private final FilteredSegmentList m_attributeList
Filtered list of attribute definitions (only if no content type).


m_anyAttributeList

private final FilteredSegmentList m_anyAttributeList
Filtered list of anyAttribute definitions (zero or one, only if no content type).


m_abstract

private java.lang.Boolean m_abstract
'abstract' attribute value.


m_mixed

private java.lang.Boolean m_mixed
'mixed' attribute value.


m_block

private AllEnumSet m_block
'block' attribute value.


m_final

private AllEnumSet m_final
'final' attribute value.

Constructor Detail

ComplexTypeElement

public ComplexTypeElement()
Constructor.

Method Detail

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

isComplexType

public boolean isComplexType()
Description copied from class: CommonTypeDefinition
Check if a complex type definition.

Specified by:
isComplexType in class CommonTypeDefinition
Returns:
true if complex type, false if simple type

isPredefinedType

public boolean isPredefinedType()
Description copied from class: CommonTypeDefinition
Check if a predefined type definition.

Specified by:
isPredefinedType in class CommonTypeDefinition
Returns:
true if predefined, false if user type

getAbstract

public java.lang.Boolean getAbstract()
Get 'abstract' attribute value.

Returns:
abstract (null if not set)

setAbstract

public void setAbstract(java.lang.Boolean abs)
Set 'abstract' attribute value.

Parameters:
abs - (null if not set)

getMixed

public java.lang.Boolean getMixed()
Get 'mixed' attribute value.

Returns:
mixed (null if not set)

setMixed

public void setMixed(java.lang.Boolean mixed)
Set 'mixed' attribute value.

Parameters:
mixed - (null if not set)

getBlock

public AllEnumSet getBlock()
Get 'block' attribute value.

Returns:
block

getFinal

public AllEnumSet getFinal()
Get 'final' attribute value.

Returns:
final

getContentType

public CommonContentBase getContentType()
Get content type element.

Returns:
content type definition, or null if none

setContentType

public void setContentType(CommonContentBase element)
Set content type element.

Parameters:
element - content type definition, or null if none

getContentDefinition

public CommonCompositorDefinition getContentDefinition()
Get content definition particle.

Specified by:
getContentDefinition in interface IComplexStructure
Returns:
content definition particle, or null if none

setContentDefinition

public void setContentDefinition(CommonCompositorDefinition element)
Set content definition particle.

Specified by:
setContentDefinition in interface IComplexStructure
Parameters:
element - content definition particle, or null if none

getAttributeList

public FilteredSegmentList getAttributeList()
Get list of attribute child elements. This list must be empty when a simpleContent or complexContent definition is used.

Specified by:
getAttributeList in interface IComplexStructure
Returns:
list of attributes

getAnyAttribute

public AnyAttributeElement getAnyAttribute()
Get anyAttribute child element.

Specified by:
getAnyAttribute in interface IComplexStructure
Returns:
element, or null if none

setAnyAttribute

public void setAnyAttribute(AnyAttributeElement element)
Set anyAttribute child element.

Specified by:
setAnyAttribute in interface IComplexStructure
Parameters:
element - element, or null if unsetting

prevalidate

public void prevalidate(ValidationContext vctx)
Description copied from class: SchemaBase
Prevalidate component information. The prevalidation step is used to check isolated aspects of a component, such as the settings for enumerated values. This empty base class implementation should be overridden by each subclass that requires prevalidation handling.

Specified by:
prevalidate in interface IComponent
Overrides:
prevalidate in class CommonTypeDefinition
Parameters:
vctx - validation context


Project Web Site