Class AnyURIType
- java.lang.Object
-
- com.sun.msv.datatype.xsd.XSDatatypeImpl
-
- com.sun.msv.datatype.xsd.ConcreteType
-
- com.sun.msv.datatype.xsd.BuiltinAtomicType
-
- com.sun.msv.datatype.xsd.AnyURIType
-
- All Implemented Interfaces:
DatabindableDatatype
,Discrete
,XSDatatype
,java.io.Serializable
,org.relaxng.datatype.Datatype
public class AnyURIType extends BuiltinAtomicType implements Discrete
"anyURI" type. See http://www.w3.org/TR/xmlschema-2/#anyURI for the spec. type of the value object isjava.lang.String
.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static boolean[]
isUric
a table that indicates whether a particular character has to be escaped or not.(package private) static RegExp
regexp
private static long
serialVersionUID
static AnyURIType
theInstance
-
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 org.relaxng.datatype.Datatype
ID_TYPE_ID, ID_TYPE_IDREF, ID_TYPE_IDREFS, ID_TYPE_NULL
-
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
-
-
Constructor Summary
Constructors Modifier Constructor Description private
AnyURIType()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
_createValue(java.lang.String content, org.relaxng.datatype.ValidationContext context)
converts a whitespace-processed lexical value into the corresponding value objectprivate static void
appendByte(java.lang.StringBuffer buf, int ch)
private static void
appendEscaped(java.lang.StringBuffer buf, char ch)
convert one 'char' in BMP to UTF-8 encoding.private static void
appendEscaped(java.lang.StringBuffer buf, char ch1, char ch2)
convert one surrogate pair to UTF-8 encoding.private static void
appendHex(java.lang.StringBuffer buf, int hex)
protected boolean
checkFormat(java.lang.String content, org.relaxng.datatype.ValidationContext context)
java.lang.String
convertToLexicalValue(java.lang.Object value, SerializationContext context)
converts value object back to the corresponding value in the lexical space.int
countLength(java.lang.Object value)
count the number of item in value type.(package private) static RegExp
createRegExp()
private static boolean[]
createUricMap()
static java.lang.String
escape(java.lang.String content)
escape non-ASCII characters in URLXSDatatype
getBaseType()
gets the base type of this type.java.lang.Class
getJavaObjectType()
gets the type of the objects that are created by the createJavaObject method.int
isFacetApplicable(java.lang.String facetName)
returns if the specified facet is applicable to this datatype.-
Methods inherited from class com.sun.msv.datatype.xsd.BuiltinAtomicType
displayName, getVariety, readResolve
-
Methods inherited from class com.sun.msv.datatype.xsd.ConcreteType
_checkValid, _createJavaObject, getConcreteType, isFinal, serializeJavaObject
-
Methods inherited from class com.sun.msv.datatype.xsd.XSDatatypeImpl
checkValid, createJavaObject, createStreamingValidator, createValue, getAncestorBuiltinType, getApplicableFacetNames, getFacetObject, getIdType, getName, getNamespaceUri, isAlwaysValid, isContextDependent, isDerivedTypeOf, isDerivedTypeOf, isValid, localize, localize, localize, localize, localize, needValueCheck, sameValue, valueHashCode
-
-
-
-
Field Detail
-
theInstance
public static final AnyURIType theInstance
-
isUric
private static final boolean[] isUric
a table that indicates whether a particular character has to be escaped or not. false indicates it has to be escaped. this table is of length 128.
-
regexp
static final RegExp regexp
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Method Detail
-
checkFormat
protected boolean checkFormat(java.lang.String content, org.relaxng.datatype.ValidationContext context)
- Specified by:
checkFormat
in classXSDatatypeImpl
-
appendHex
private static void appendHex(java.lang.StringBuffer buf, int hex)
-
appendByte
private static void appendByte(java.lang.StringBuffer buf, int ch)
-
appendEscaped
private static void appendEscaped(java.lang.StringBuffer buf, char ch)
convert one 'char' in BMP to UTF-8 encoding.
-
appendEscaped
private static void appendEscaped(java.lang.StringBuffer buf, char ch1, char ch2)
convert one surrogate pair to UTF-8 encoding.
-
createUricMap
private static boolean[] createUricMap()
-
escape
public static java.lang.String escape(java.lang.String content)
escape non-ASCII characters in URL
-
createRegExp
static RegExp createRegExp()
-
_createValue
public java.lang.Object _createValue(java.lang.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 classXSDatatypeImpl
-
convertToLexicalValue
public java.lang.String convertToLexicalValue(java.lang.Object value, SerializationContext context)
Description copied from interface:XSDatatype
converts value object back to the corresponding value in the lexical space.This method does the reverse operation of the createValue method. The returned string is not necessarily the canonical representation. Also note that the implementation may accept invalid values without throwing IllegalArgumentException. To make sure that the result is actually a valid representation, call the isValid method.
Be careful not to confuse this method with The serializeJavaObject method, which is defined in the
DatabindableDatatype
method.- Specified by:
convertToLexicalValue
in interfaceXSDatatype
context
- Context information that will be possibly used for the conversion. Currently, this object is used only by QName, but may be extended in the future.
-
isFacetApplicable
public final int isFacetApplicable(java.lang.String facetName)
Description copied from interface:XSDatatype
returns if the specified facet is applicable to this datatype.- Specified by:
isFacetApplicable
in interfaceXSDatatype
- Returns:
- APPLICABLE
- if the facet is applicable
- FIXED
- if the facet is already fixed (that is,not applicable)
- NOT_ALLOWED
- if the facet is not applicable to this datatype at all. this value is also returned for unknown facets.
-
countLength
public final int countLength(java.lang.Object value)
Description copied from interface:Discrete
count the number of item in value type. Actual semantics of this method varies.- Specified by:
countLength
in interfaceDiscrete
-
getJavaObjectType
public java.lang.Class getJavaObjectType()
Description copied from interface:DatabindableDatatype
gets the type of the objects that are created by the createJavaObject method.- Specified by:
getJavaObjectType
in interfaceDatabindableDatatype
-
getBaseType
public XSDatatype getBaseType()
Description copied from interface:XSDatatype
gets the base type of this type. This method returns null if this object represents the simple ur-type.This method is intended to capture the semantics of the base type definition property of the simple type component, but there is an important difference.
Specifically, if you derive a type D from another type B, then calling D.getBaseType() does not necessarily return B. Instead, it may return an intermediate object (that represents a facet). Calling the getBaseType method recursively will eventually return B.
- Specified by:
getBaseType
in interfaceXSDatatype
-
-