Package org.jibx.schema.elements
Class UnionElement
- java.lang.Object
-
- org.jibx.schema.elements.SchemaBase
-
- org.jibx.schema.elements.OpenAttrBase
-
- org.jibx.schema.elements.AnnotatedBase
-
- org.jibx.schema.elements.UnionElement
-
- All Implemented Interfaces:
IComponent
public class UnionElement extends AnnotatedBase
union element definition.- Author:
- Dennis M. Sosnoski
-
-
Field Summary
Fields Modifier and Type Field Description private long
INLINE_TYPE_MASK
Mask bits for inline base type definition.private FilteredSegmentList
m_inlineBaseList
Filtered list of inline base type definition elements.private CommonTypeDefinition[]
m_memberTypeDefinitions
Actual definitions corresponding to 'memberTypes' attribute values (set during validation).private QName[]
m_memberTypes
'memberTypes' attribute value.static StringArray
s_allowedAttributes
List of allowed attribute names.-
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
Constructors Constructor Description UnionElement()
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FilteredSegmentList
getInlineBaseList()
Get list of inline member type definitions.CommonTypeDefinition[]
getMemberTypeDefinitions()
Get referenced member type definitions.QName[]
getMemberTypes()
Get 'memberTypes' attribute value.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
setMemberTypes(QName[] bases)
Set 'memberTypes' attribute value.void
validate(ValidationContext vctx)
Validate component information.-
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, validateAttributes, writeNamespaces
-
-
-
-
Field Detail
-
s_allowedAttributes
public static final StringArray s_allowedAttributes
List of allowed attribute names.
-
INLINE_TYPE_MASK
private long INLINE_TYPE_MASK
Mask bits for inline base type definition.
-
m_inlineBaseList
private final FilteredSegmentList m_inlineBaseList
Filtered list of inline base type definition elements.
-
m_memberTypes
private QName[] m_memberTypes
'memberTypes' attribute value.
-
m_memberTypeDefinitions
private CommonTypeDefinition[] m_memberTypeDefinitions
Actual definitions corresponding to 'memberTypes' attribute values (set during validation).
-
-
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 classSchemaBase
- Parameters:
ictx
- unmarshalling context- Throws:
JiBXException
- on error
-
getMemberTypes
public QName[] getMemberTypes()
Get 'memberTypes' attribute value.- Returns:
- attribute value, or
null
if none
-
setMemberTypes
public void setMemberTypes(QName[] bases)
Set 'memberTypes' attribute value.- Parameters:
bases
- member types, ornull
if none
-
getMemberTypeDefinitions
public CommonTypeDefinition[] getMemberTypeDefinitions()
Get referenced member type definitions. This method can only be called after validation.- Returns:
- member types, or
null
if none
-
getInlineBaseList
public FilteredSegmentList getInlineBaseList()
Get list of inline member type definitions.- Returns:
- inline types
-
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 interfaceIComponent
- Overrides:
prevalidate
in classAnnotatedBase
- Parameters:
vctx
- validation context
-
validate
public void validate(ValidationContext vctx)
Description copied from class:SchemaBase
Validate component information. The validation step is used for checking the interactions between components, such as name references to other components. TheSchemaBase.prevalidate(org.jibx.schema.validation.ValidationContext)
method will always be called for every component in the schema definition before this method is called for any component. This empty base class implementation should be overridden by each subclass that requires validation handling.- Specified by:
validate
in interfaceIComponent
- Overrides:
validate
in classSchemaBase
- Parameters:
vctx
- validation context
-
-