com.sun.msv.datatype.xsd

Class Proxy

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

public class Proxy
extends XSDatatypeImpl

Delegates all methods to the base type.
Author:
Kohsuke KAWAGUCHI

Field Summary

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

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

Constructor Summary

Proxy(String nsUri, String newTypeName, XSDatatypeImpl baseType)

Method Summary

void
_checkValid(String content, ValidationContext context)
actual 'meat' of the checkValid method
Object
_createJavaObject(String literal, ValidationContext context)
Object
_createValue(String content, ValidationContext context)
converts a whitespace-processed lexical value into the corresponding value object
boolean
checkFormat(String content, ValidationContext context)
String
convertToLexicalValue(Object value, 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()
gets the type of the objects that are created by the createJavaObject method.
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)
converts a value object back to the lexical representation.

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

Constructor Details

Proxy

public Proxy(String nsUri,
             String newTypeName,
             XSDatatypeImpl baseType)

Method Details

_checkValid

public void _checkValid(String content,
                        ValidationContext context)
            throws DatatypeException
actual 'meat' of the checkValid method

_createJavaObject

public Object _createJavaObject(String literal,
                                ValidationContext context)

_createValue

public Object _createValue(String content,
                           ValidationContext context)
converts a whitespace-processed lexical value into the corresponding value object

checkFormat

public boolean checkFormat(String content,
                           ValidationContext context)

convertToLexicalValue

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

displayName

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

getBaseType

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

getConcreteType

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

getFacetObject

public 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 Class getJavaObjectType()
gets the type of the objects that are created by the createJavaObject method.
Specified by:
getJavaObjectType in interface DatabindableDatatype

getVariety

public 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 int isFacetApplicable(String facetName)
Specified by:
isFacetApplicable in interface XSDatatype

isFinal

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

serializeJavaObject

public String serializeJavaObject(Object value,
                                  SerializationContext context)
converts a value object back to the lexical representation.

This method is a kind of the "reverse" function of the createJavaObject method.

Specified by:
serializeJavaObject in interface DatabindableDatatype
Parameters:
context - The context object is used to obtain information necessary to serialize the value object. For example, QName type uses the context to encode the URI into a prefix.
Returns:
null if the given object is invalid with respect to this datatype.