org.jbind.xml.schema.cmp
Class AbstractListType

java.lang.Object
  extended byorg.jbind.xml.schema.cmp.Component
      extended byorg.jbind.xml.schema.cmp.AbstractType
          extended byorg.jbind.xml.schema.cmp.SimpleType
              extended byorg.jbind.xml.schema.cmp.AbstractListType
All Implemented Interfaces:
IAnySimpleType, IAnyType, IComponent, IHasBindingAttributes, IHasLocation, IListType, ISimpleType, ISourceInfo
Direct Known Subclasses:
BuiltInListType, ListType

public abstract class AbstractListType
extends SimpleType
implements IListType


Constructor Summary
AbstractListType(ISourceInfo aSourceInfo, java.lang.String aNamespace, java.lang.String aName, java.lang.String aRole, java.util.Set aFinalTypes)
           
 
Method Summary
 void checkEnclosedConstraints(ICheckContext aContext)
          Checks the enclosed constraints.
 IAnyTypeData createItem(IDataImpl anImpl)
           
 ISimpleType createRestriction(ISourceInfo aSourceInfo, java.lang.String aNamespace, java.lang.String aName, java.lang.String aRole, java.util.Set aFinalTypes, IConstraintViolations aViolations)
          Creates a simple type that is a restriction of this type.
 IAnyType getInstanceType()
          Gets the type that instances of this type have.
 java.lang.Class getSimpleStorageType()
          Gets the simple storage type.
 boolean isApplicable(ConstraintType aConstraintType)
          Checks if the specified constraint type is applicable to the type.
 boolean isUnion()
           
 
Methods inherited from class org.jbind.xml.schema.cmp.SimpleType
getSimpleContentType, getXPathMethods, isComplex, isExtension, isSimple
 
Methods inherited from class org.jbind.xml.schema.cmp.AbstractType
addDirectSubtype, addFinalType, canBeOverloadedBy, checkConstraints, createData, createEmptyData, createUncheckedData, doCreateEmptyData, getAttrDesc, getAttributesModel, getBaseType, getConstraints, getContentModel, getDataCreator, getDirectSubtypes, getElemDesc, getRoleName, getSubtypes, getSymbolspace, isAbstract, isActive, isActive, isBaseType, isExtension, isInstanceType, isReference, isRestriction, setAttributesModel, setBaseType, setConstraints, setContentModel, setDataCreator, validate
 
Methods inherited from class org.jbind.xml.schema.cmp.Component
addSubComponent, getAnnotation, getBindingAttribute, getBindings, getDefaultedLocalBindingAttribute, getDefaultedLocalStringBindingAttribute, getGlobalRef, getLocalBindingAttribute, getLocalStringBindingAttribute, getLocation, getName, getNamespace, getParentComponent, getPrefixToNamespaceMapping, getStringBindingAttribute, isAnonymous, isTopLevelComponent, setBindings, setParentComponent, visitSubComponents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jbind.xml.core.type.IListType
getItemType
 
Methods inherited from interface org.jbind.xml.core.type.IAnyType
addDirectSubtype, canBeOverloadedBy, checkConstraints, createData, createEmptyData, createUncheckedData, getAttrDesc, getAttributesModel, getBaseType, getConstraints, getContentModel, getDataCreator, getDirectSubtypes, getElemDesc, getRoleName, getSimpleContentType, getSubtypes, getXPathMethods, isAbstract, isActive, isActive, isBaseType, isComplex, isExtension, isExtension, isInstanceType, isRestriction, isSimple, setBaseType, setConstraints, setDataCreator
 
Methods inherited from interface org.jbind.xml.core.cmp.IComponent
accept, addSubComponent, getBindings, getGlobalRef, getName, getNamespace, getParentComponent, getSymbolspace, isAnonymous, isReference, isTopLevelComponent, setBindings, setParentComponent, validate
 
Methods inherited from interface org.jbind.xml.core.cmp.ISourceInfo
getAnnotation, getPrefixToNamespaceMapping
 
Methods inherited from interface org.jbind.xml.base.IHasLocation
getLocation
 
Methods inherited from interface org.jbind.xml.base.IHasBindingAttributes
getBindingAttribute, getDefaultedLocalBindingAttribute, getDefaultedLocalStringBindingAttribute, getLocalBindingAttribute, getLocalStringBindingAttribute, getStringBindingAttribute
 

Constructor Detail

AbstractListType

public AbstractListType(ISourceInfo aSourceInfo,
                        java.lang.String aNamespace,
                        java.lang.String aName,
                        java.lang.String aRole,
                        java.util.Set aFinalTypes)
Method Detail

isApplicable

public final boolean isApplicable(ConstraintType aConstraintType)
Description copied from interface: ISimpleType
Checks if the specified constraint type is applicable to the type.

Specified by:
isApplicable in interface ISimpleType
Parameters:
aConstraintType - (required).
Returns:
Returns true iff the constraint type is applicable on the type.

getInstanceType

public final IAnyType getInstanceType()
Description copied from interface: IAnyType
Gets the type that instances of this type have. In general a type is also its instance type. In case of union types the instance type is the most specific common base type of all member types of the union.

Specified by:
getInstanceType in interface IAnyType
Returns:
(required).

createItem

public final IAnyTypeData createItem(IDataImpl anImpl)
                              throws XmlException
Specified by:
createItem in interface IListType
Throws:
XmlException

createRestriction

public final ISimpleType createRestriction(ISourceInfo aSourceInfo,
                                           java.lang.String aNamespace,
                                           java.lang.String aName,
                                           java.lang.String aRole,
                                           java.util.Set aFinalTypes,
                                           IConstraintViolations aViolations)
Description copied from interface: ISimpleType
Creates a simple type that is a restriction of this type.

Specified by:
createRestriction in interface ISimpleType
Returns:
(required).

getSimpleStorageType

public final java.lang.Class getSimpleStorageType()
Description copied from interface: IAnyType
Gets the simple storage type. The simple storage type is the Java type that is used to store the simple values of this type. A simple storage type can either be a primitive type (like int, boolean, float, ...) or a (simple) reference type (like String). Only non-complex types, i.e. atomic types, list types, union types, and restrictions of them have a simple storage type. In particular, complex types with simple content also return null.

Specified by:
getSimpleStorageType in interface IAnyType
Returns:
(optional).

checkEnclosedConstraints

public final void checkEnclosedConstraints(ICheckContext aContext)
Description copied from interface: IAnyType
Checks the enclosed constraints. Depending on the type this method performs the following checks:

Specified by:
checkEnclosedConstraints in interface IAnyType
Parameters:
aContext - (required).

isUnion

public final boolean isUnion()
Specified by:
isUnion in class AbstractType