com.sun.msv.datatype.xsd
Class LengthFacet

java.lang.Object
  extended by com.sun.msv.datatype.xsd.XSDatatypeImpl
      extended by com.sun.msv.datatype.xsd.DataTypeWithFacet
          extended by com.sun.msv.datatype.xsd.LengthFacet
All Implemented Interfaces:
DatabindableDatatype, XSDatatype, Serializable, org.relaxng.datatype.Datatype

public class LengthFacet
extends DataTypeWithFacet

"length", "minLength", and "maxLength" facet validator. this class also detects inconsistent facet setting (for example, minLength=100 and maxLength=0)

Author:
Kohsuke KAWAGUCHI
See Also:
Serialized Form

Field Summary
 int length
           
 
Fields inherited from class com.sun.msv.datatype.xsd.DataTypeWithFacet
baseType, concreteType, facetName, isFacetFixed
 
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, serializedValueChecker, 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
 
Fields inherited from interface org.relaxng.datatype.Datatype
ID_TYPE_ID, ID_TYPE_IDREF, ID_TYPE_IDREFS, ID_TYPE_NULL
 
Constructor Summary
protected LengthFacet(String nsUri, String typeName, XSDatatypeImpl baseType, int _length, boolean _isFixed)
           
protected LengthFacet(String nsUri, String typeName, XSDatatypeImpl baseType, TypeIncubator facets)
           
 
Method Summary
 Object _createValue(String content, org.relaxng.datatype.ValidationContext context)
          converts a whitespace-processed lexical value into the corresponding value object
protected  boolean checkFormat(String literal, org.relaxng.datatype.ValidationContext context)
           
protected  void diagnoseByFacet(String content, org.relaxng.datatype.ValidationContext context)
           
protected  boolean needValueCheck()
           
 
Methods inherited from class com.sun.msv.datatype.xsd.DataTypeWithFacet
_checkValid, _createJavaObject, convertToLexicalValue, displayName, getBaseType, getConcreteType, getFacetObject, getIdType, getJavaObjectType, getVariety, isContextDependent, isFacetApplicable, isFinal, serializeJavaObject
 
Methods inherited from class com.sun.msv.datatype.xsd.XSDatatypeImpl
checkValid, createJavaObject, createStreamingValidator, createValue, getAncestorBuiltinType, getApplicableFacetNames, getName, getNamespaceUri, isAlwaysValid, isDerivedTypeOf, isDerivedTypeOf, isValid, localize, localize, localize, localize, localize, sameValue, valueHashCode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

length

public final int length
Constructor Detail

LengthFacet

protected LengthFacet(String nsUri,
                      String typeName,
                      XSDatatypeImpl baseType,
                      TypeIncubator facets)
               throws org.relaxng.datatype.DatatypeException
Throws:
org.relaxng.datatype.DatatypeException

LengthFacet

protected LengthFacet(String nsUri,
                      String typeName,
                      XSDatatypeImpl baseType,
                      int _length,
                      boolean _isFixed)
               throws org.relaxng.datatype.DatatypeException
Throws:
org.relaxng.datatype.DatatypeException
Method Detail

_createValue

public Object _createValue(String content,
                           org.relaxng.datatype.ValidationContext context)
Description copied from class: XSDatatypeImpl
converts a whitespace-processed lexical value into the corresponding value object

Specified by:
_createValue in class XSDatatypeImpl

diagnoseByFacet

protected void diagnoseByFacet(String content,
                               org.relaxng.datatype.ValidationContext context)
                        throws org.relaxng.datatype.DatatypeException
Specified by:
diagnoseByFacet in class DataTypeWithFacet
Throws:
org.relaxng.datatype.DatatypeException

needValueCheck

protected final boolean needValueCheck()
Overrides:
needValueCheck in class DataTypeWithFacet

checkFormat

protected final boolean checkFormat(String literal,
                                    org.relaxng.datatype.ValidationContext context)
Specified by:
checkFormat in class XSDatatypeImpl


MSV