## net.sf.saxon.value
Class Base64BinaryValue

    java.lang.Object
      net.sf.saxon.value.Value
          net.sf.saxon.value.AtomicValue
              net.sf.saxon.value.Base64BinaryValue

All Implemented Interfaces:
  Serializable, Comparable, SequenceIterable, Item, ValueRepresentation

    public class Base64BinaryValue

extends AtomicValue

A value of type xs:base64Binary

See Also:
  Serialized Form

Field Summary

Fields inherited from class net.sf.saxon.value.Value
`EMPTY_CLASS_ARRAY, INDETERMINATE_ORDERING`

Fields inherited from interface net.sf.saxon.om.ValueRepresentation
`EMPTY_VALUE_ARRAY`

Constructor Summary
`Base64BinaryValue(byte[] value)` Constructor: create a base64Binary value from a given array of bytes
`Base64BinaryValue(CharSequence s)` Constructor: create a base64Binary value from a supplied string in base64 encoding
`Base64BinaryValue(CharSequence s, AtomicType type)` Constructor: create a base64Binary value from a supplied string in base64 encoding, with a specified type.

Method Summary
`AtomicValue` `convertPrimitive(BuiltInAtomicType requiredType, boolean validate, XPathContext context)` Convert to target data type
`Object` `convertToJava(Class target, XPathContext context)` Convert to Java object (for passing to external functions)
`AtomicValue` `copy(AtomicType typeLabel)` Create a copy of this atomic value (usually so that the type label can be changed).
`boolean` `equals(Object other)` Test if the two base64Binary values are equal.
`byte[]` `getBinaryValue()` Get the binary value
`int` `getLengthInOctets()` Get the number of octets in the value
`BuiltInAtomicType` `getPrimitiveType()` Determine the primitive type of the value.
`String` `getStringValue()` Convert to string
`int` `hashCode()` Return a hash code to support the equals() function

Methods inherited from class net.sf.saxon.value.AtomicValue
`checkPermittedContents, convert, convert, effectiveBooleanValue, getCardinality, getComponent, getItemType, getLength, getStringValueCS, getTypedValue, getTypeLabel, getXPathComparable, hasBuiltInType, isMultiValued, itemAt, iterate, process, setTypeLabel, toString`

Methods inherited from class net.sf.saxon.value.Value
`asItem, asItem, asIterator, asValue, compareTo, convert, convertJavaObjectToXPath, fromItem, getCanonicalLexicalRepresentation, getIterator, getSchemaComparable, iterate, makeQNameValue, reduce, stringToNumber`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Base64BinaryValue

    public Base64BinaryValue(CharSequence s)
                      throws XPathException

  Constructor: create a base64Binary value from a supplied string in base64 encoding

  Throws:
    `XPathException`

### Base64BinaryValue

    public Base64BinaryValue(CharSequence s,
                             AtomicType type)

  Constructor: create a base64Binary value from a supplied string in base64 encoding, with a specified type. This method throws no checked exceptions; the caller is expected to ensure that the string is a valid Base64 lexical representation, that it conforms to the specified type, and that the type is indeed a subtype of xs:base64Binary. An unchecked exception such as an IllegalArgumentException may be thrown if these conditions are not satisfied, but this is not guaranteed.

  Parameters:
    `s` - the value in base64 encoding
    `type` - the atomic type. This must be xs:base64binary or a subtype.

### Base64BinaryValue

    public Base64BinaryValue(byte[] value)

  Constructor: create a base64Binary value from a given array of bytes

Method Detail

### copy

    public AtomicValue copy(AtomicType typeLabel)

  Create a copy of this atomic value (usually so that the type label can be changed). The type label of the copy will be reset to the primitive type.

  Specified by:
    `copy` in class `AtomicValue`
  Parameters:
    `typeLabel` -

### getBinaryValue

    public byte[] getBinaryValue()

  Get the binary value

### getPrimitiveType

    public BuiltInAtomicType getPrimitiveType()

  Description copied from class: `AtomicValue`
  Determine the primitive type of the value. This delivers the same answer as getItemType().getPrimitiveItemType(). The primitive types are the 19 primitive types of XML Schema, plus xs:integer, xs:dayTimeDuration and xs:yearMonthDuration, and xs:untypedAtomic. For external objects, the result is AnyAtomicType.

  Specified by:
    `getPrimitiveType` in class `AtomicValue`

### convertPrimitive

    public AtomicValue convertPrimitive(BuiltInAtomicType requiredType,
                                        boolean validate,
                                        XPathContext context)

  Convert to target data type

  Specified by:
    `convertPrimitive` in class `AtomicValue`
  Parameters:
    `requiredType` - an integer identifying the required atomic type
    `context` -
    `validate` - true if validation is required. If set to false, the caller guarantees that the value is valid for the target data type, and that further validation is therefore not required. Note that a validation failure may be reported even if validation was not requested.
  Returns:
    an AtomicValue, a value of the required type; or an ErrorValue

### getStringValue

    public String getStringValue()

  Convert to string

  Specified by:
    `getStringValue` in interface `Item`
  Specified by:
    `getStringValue` in interface `ValueRepresentation`
  Specified by:
    `getStringValue` in class `AtomicValue`
  Returns:
    the canonical representation.
  See Also:
    `Item.getStringValueCS()`

### getLengthInOctets

    public int getLengthInOctets()

  Get the number of octets in the value

### convertToJava

    public Object convertToJava(Class target,
                                XPathContext context)
                         throws XPathException

  Convert to Java object (for passing to external functions)

  Overrides:
    `convertToJava` in class `Value`
  Throws:
    `XPathException`

### equals

    public boolean equals(Object other)

  Test if the two base64Binary values are equal.

  Overrides:
    `equals` in class `Value`

### hashCode

    public int hashCode()

  Description copied from class: `Value`
  Return a hash code to support the equals() function

  Overrides:
    `hashCode` in class `Value`

Copyright (C) Michael H. Kay. All rights reserved.