Package com.sun.msv.datatype.xsd
Class Base64BinaryType
- 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.BinaryBaseType
-
- com.sun.msv.datatype.xsd.Base64BinaryType
-
- All Implemented Interfaces:
DatabindableDatatype
,Discrete
,XSDatatype
,java.io.Serializable
,org.relaxng.datatype.Datatype
public class Base64BinaryType extends BinaryBaseType
"base64Binary" type. type of the value object isBinaryValueType
. See http://www.w3.org/TR/xmlschema-2/#base64Binary for the spec- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static byte[]
decodeMap
private static char[]
encodeMap
private static byte
PADDING
private static long
serialVersionUID
static Base64BinaryType
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
Base64BinaryType()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
_createValue(java.lang.String lexicalValue, org.relaxng.datatype.ValidationContext context)
converts a whitespace-processed lexical value into the corresponding value objectprivate static int
calcLength(char[] buf)
computes the length of binary data.protected boolean
checkFormat(java.lang.String lexicalValue, 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.protected static char
encode(int i)
private static byte[]
initDecodeMap()
private static char[]
initEncodeMap()
static byte[]
load(java.lang.String lexicalValue)
static java.lang.String
save(byte[] input)
java.lang.String
serializeJavaObject(java.lang.Object value, SerializationContext context)
converts a value object back to the lexical representation.-
Methods inherited from class com.sun.msv.datatype.xsd.BinaryBaseType
_createJavaObject, countLength, getBaseType, getJavaObjectType, isFacetApplicable
-
Methods inherited from class com.sun.msv.datatype.xsd.BuiltinAtomicType
displayName, getVariety, readResolve
-
Methods inherited from class com.sun.msv.datatype.xsd.ConcreteType
_checkValid, getConcreteType, isFinal
-
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 Base64BinaryType theInstance
-
decodeMap
private static final byte[] decodeMap
-
PADDING
private static final byte PADDING
- See Also:
- Constant Field Values
-
encodeMap
private static final char[] encodeMap
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Method Detail
-
initDecodeMap
private static byte[] initDecodeMap()
-
_createValue
public java.lang.Object _createValue(java.lang.String lexicalValue, 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
-
load
public static byte[] load(java.lang.String lexicalValue)
-
checkFormat
protected boolean checkFormat(java.lang.String lexicalValue, org.relaxng.datatype.ValidationContext context)
- Specified by:
checkFormat
in classXSDatatypeImpl
-
calcLength
private static int calcLength(char[] buf)
computes the length of binary data. This function also performs format check.- Returns:
- -1 if format is illegal.
-
initEncodeMap
private static char[] initEncodeMap()
-
encode
protected static char encode(int i)
-
serializeJavaObject
public java.lang.String serializeJavaObject(java.lang.Object value, SerializationContext context)
Description copied from interface:DatabindableDatatype
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 interfaceDatabindableDatatype
- Specified by:
serializeJavaObject
in classBinaryBaseType
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.
-
save
public static java.lang.String save(byte[] input)
-
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.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.
-
-