com.sun.msv.datatype.xsd

Class DataTypeWithFacet

Implemented Interfaces:
Datatype, Serializable, DatabindableDatatype, XSDatatype
Known Direct Subclasses:
WhiteSpaceFacet

public abstract class DataTypeWithFacet
extends XSDatatypeImpl

Base implementation of facet-restricted datatype
Author:
Kohsuke KAWAGUCHI

Field Summary

XSDatatypeImpl
baseType
immediate base type, which may be a concrete type or DataTypeWithFacet
String
facetName
name of this facet
boolean
isFacetFixed
a flag that indicates the facet is fixed (derived types cannot specify this value anymore)

Fields inherited from class com.sun.msv.datatype.xsd.XSDatatypeImpl

ERR_DUPLICATE_FACET, ERR_EMPTY_UNION, ERR_ENUMERATION, ERR_ENUMERATION_WITH_ARG, ERR_FACET_MUST_BE_NON_NEGATIVE_INTEGER, ERR_FACET_MUST_BE_POSITIVE_INTEGER, ERR_INAPPROPRIATE_FOR_TYPE, ERR_INCONSISTENT_FACETS_1, ERR_INCONSISTENT_FACETS_2, ERR_INVALID_BASE_TYPE, ERR_INVALID_ITEMTYPE, ERR_INVALID_MEMBER_TYPE, ERR_INVALID_VALUE_FOR_THIS_TYPE, ERR_INVALID_WHITESPACE_VALUE, ERR_LENGTH, ERR_LOOSENED_FACET, ERR_MAXLENGTH, ERR_MINLENGTH, ERR_NOT_APPLICABLE_FACET, ERR_OUT_OF_RANGE, ERR_OVERRIDING_FIXED_FACET, ERR_PARSE_ERROR, ERR_PATTERN_1, ERR_PATTERN_MANY, ERR_SCALE_IS_GREATER_THAN_PRECISION, ERR_TOO_MUCH_PRECISION, ERR_TOO_MUCH_SCALE, ERR_X_AND_Y_ARE_EXCLUSIVE, whiteSpace

Fields inherited from interface com.sun.msv.datatype.xsd.XSDatatype

APPLICABLE, DERIVATION_BY_LIST, DERIVATION_BY_RESTRICTION, DERIVATION_BY_UNION, FACET_ENUMERATION, FACET_FRACTIONDIGITS, FACET_LENGTH, FACET_MAXEXCLUSIVE, FACET_MAXINCLUSIVE, FACET_MAXLENGTH, FACET_MINEXCLUSIVE, FACET_MININCLUSIVE, FACET_MINLENGTH, FACET_PATTERN, FACET_TOTALDIGITS, FACET_WHITESPACE, FIXED, NOT_ALLOWED, VARIETY_ATOMIC, VARIETY_LIST, VARIETY_UNION, XMLSCHEMA_NSURI

Method Summary

Object
_createJavaObject(String literal, ValidationContext context)
String
convertToLexicalValue(Object o, SerializationContext context)
String
displayName()
XSDatatype
getBaseType()
ConcreteType
getConcreteType()
gets the concrete type object of the restriction chain.
DataTypeWithFacet
getFacetObject(String facetName)
gets the facet object that restricts the specified facet
int
getIdType()
A property for RELAX NG DTD compatibility datatypes.
Class
getJavaObjectType()
int
getVariety()
boolean
isContextDependent()
A property for RELAX NG DTD compatibility datatypes.
int
isFacetApplicable(String facetName)
boolean
isFinal(int derivationType)
String
serializeJavaObject(Object value, SerializationContext context)

Methods inherited from class com.sun.msv.datatype.xsd.XSDatatypeImpl

checkValid, createJavaObject, createStreamingValidator, createValue, getAncestorBuiltinType, getApplicableFacetNames, getConcreteType, getFacetObject, getIdType, getName, getNamespaceUri, isAlwaysValid, isContextDependent, isDerivedTypeOf, isDerivedTypeOf, isValid, localize, localize, localize, localize, localize, sameValue, valueHashCode

Field Details

baseType

public final XSDatatypeImpl baseType
immediate base type, which may be a concrete type or DataTypeWithFacet

facetName

public final String facetName
name of this facet

isFacetFixed

public final boolean isFacetFixed
a flag that indicates the facet is fixed (derived types cannot specify this value anymore)

Method Details

_createJavaObject

public final Object _createJavaObject(String literal,
                                      ValidationContext context)

convertToLexicalValue

public final String convertToLexicalValue(Object o,
                                          SerializationContext context)
Specified by:
convertToLexicalValue in interface XSDatatype

displayName

public final String displayName()
Specified by:
displayName in interface XSDatatype

getBaseType

public final XSDatatype getBaseType()
Specified by:
getBaseType in interface XSDatatype

getConcreteType

public final ConcreteType getConcreteType()
gets the concrete type object of the restriction chain.
Overrides:
getConcreteType in interface XSDatatypeImpl

getFacetObject

public final DataTypeWithFacet getFacetObject(String facetName)
gets the facet object that restricts the specified facet
Specified by:
getFacetObject in interface XSDatatype
Overrides:
getFacetObject in interface XSDatatypeImpl
Returns:
null if no such facet object exists.

getIdType

public int getIdType()
A property for RELAX NG DTD compatibility datatypes. ID_TYPE_NULL is returned by default.
Overrides:
getIdType in interface XSDatatypeImpl

getJavaObjectType

public final Class getJavaObjectType()
Specified by:
getJavaObjectType in interface DatabindableDatatype

getVariety

public final int getVariety()
Specified by:
getVariety in interface XSDatatype

isContextDependent

public boolean isContextDependent()
A property for RELAX NG DTD compatibility datatypes. Context-independent by default.
Overrides:
isContextDependent in interface XSDatatypeImpl

isFacetApplicable

public final int isFacetApplicable(String facetName)
Specified by:
isFacetApplicable in interface XSDatatype

isFinal

public final boolean isFinal(int derivationType)
Specified by:
isFinal in interface XSDatatype

serializeJavaObject

public String serializeJavaObject(Object value,
                                  SerializationContext context)
Specified by:
serializeJavaObject in interface DatabindableDatatype