org.apache.xmlbeans.impl.values

## Class JavaDecimalHolder

- java.lang.Object
- - org.apache.xmlbeans.impl.values.XmlObjectBase
  - - org.apache.xmlbeans.impl.values.JavaDecimalHolder

- All Implemented Interfaces:
    Serializable, TypeStoreUser, SimpleValue, XmlObject, XmlTokenSource
  Direct Known Subclasses:
    JavaDecimalHolderEx, XmlDecimalImpl

      public class JavaDecimalHolder
      extends XmlObjectBase

  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.apache.xmlbeans.impl.values.XmlObjectBase

      `_voorVc, KIND_SETTERHELPER_ARRAYITEM, KIND_SETTERHELPER_SINGLETON, MAJOR_VERSION_NUMBER, MINOR_VERSION_NUMBER`

    - ### Fields inherited from interface org.apache.xmlbeans.XmlObject

      `EQUAL, Factory, GREATER_THAN, LESS_THAN, NOT_EQUAL, type`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JavaDecimalHolder()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected int` | `compare_to(XmlObject decimal)` This implementation of compare_to is allowed to do two unusual things: (1) it can assume that the xmlobj passed has a primitive type underlying the instance type that matches the current instance, and that neither is nil.
    `protected String` | `compute_text(NamespaceManager nsm)` This should return the canonical string value of the primitive.
    `protected int` | `decimalHashCode()` This method will has BigDecimals with the same arithmetic value to the same hash code (eg, 2.3 & 2.30 will have the same hash.) This differs from BigDecimal.hashCode()
    `protected boolean` | `equal_to(XmlObject decimal)`
    `BigDecimal` | `getBigDecimalValue()` Returns the value as a `BigDecimal`.
    `SchemaType` | `schemaType()`
    `protected void` | `set_BigDecimal(BigDecimal v)`
    `protected void` | `set_nil()` This should clear the value, and set it to whatever is supposed to be returned when the value is nilled.
    `protected void` | `set_text(String s)` This should set the value of the type from text, or throw an XmlValueOutOfRangeException if it can't.
    `static void` | `validateLexical(String v, ValidationContext context)` Performs lexical validation only.
    `protected int` | `value_hash_code()` Note, this is carefully aligned with hash codes for all xsd:decimal primitives.

    - ### Methods inherited from class org.apache.xmlbeans.impl.values.XmlObjectBase

      `_copy, _copy, _isComplexContent, _isComplexType, _set, _validateOnSet, attach_store, build_nil, build_text, changeType, check_dated, check_orphaned, compareTo, compareValue, copy, copy, create_attribute_user, create_element_user, disconnect_store, documentProperties, dump, elementFlags, equals, execQuery, execQuery, generatedSetterHelperImpl, get_attribute_field, get_attribute_type, get_attributeflags, get_default_attribute_text, get_default_attribute_value, get_default_element_text, get_element_ending_delimiters, get_element_type, get_elementflags, get_schema_type, get_store, get_wscanon_rule, get_wscanon_text, getBigIntegerValue, getBooleanArray, getBooleanArray, getBooleanValue, getByteArray, getByteArray, getByteArrayValue, getByteValue, getCalendarValue, getDateValue, getDomNode, getDoubleArray, getDoubleArray, getDoubleValue, getEnumArray, getEnumArray, getEnumValue, getFloatArray, getFloatArray, getFloatValue, getGDateValue, getGDurationValue, getIntArray, getIntArray, getIntValue, getListValue, getLongArray, getLongArray, getLongValue, getObjectArray, getObjectArray, getObjectValue, getQNameValue, getShortArray, getShortArray, getShortValue, getStringValue, getXmlLocale, getXmlObjectArray, getXmlObjectArray, has_store, hashCode, init_flags, initComplexType, instanceType, invalidate_element_order, invalidate_nilvalue, invalidate_value, is_child_element_order_sensitive, is_defaultable_ws, is_orphaned, isDefault, isDefaultable, isFixed, isImmutable, isInstanceOf, isNil, isNillable, java_value, monitor, new_visitor, newCursor, newCursorForce, newDomNode, newDomNode, newInputStream, newInputStream, newReader, newReader, newXMLStreamReader, newXMLStreamReader, save, save, save, save, save, save, save, save, selectAttribute, selectAttribute, selectAttributes, selectChildren, selectChildren, selectChildren, selectPath, selectPath, set_b64, set_BigInteger, set_boolean, set_byte, set_ByteArray, set_Calendar, set_char, set_ComplexXml, set_Date, set_double, set_enum, set_float, set_GDate, set_GDuration, set_hex, set_int, set_list, set_long, set_newValue, set_notation, set_QName, set_short, set_String, set_xmlanysimple, set, setBigDecimalValue, setBigIntegerValue, setBooleanValue, setByteArrayValue, setByteValue, setCalendarValue, setDateValue, setDoubleValue, setEnumValue, setFloatValue, setGDateValue, setGDateValue, setGDurationValue, setGDurationValue, setImmutable, setIntValue, setListValue, setLongValue, setNil, setObjectValue, setQNameValue, setShortValue, setStringValue, setValidateOnSet, substitute, toString, update_from_complex_content, uses_invalidate_value, validate_now, validate_simpleval, validate, validate, valueEquals, valueHashCode, writeReplace, xgetArray, xgetArray, xgetListValue, xmlText, xmlText`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### JavaDecimalHolder

          public JavaDecimalHolder()

  - ### Method Detail

    - #### schemaType

          public SchemaType schemaType()

      Specified by:
        `schemaType` in interface `XmlObject`
      Specified by:
        `schemaType` in class `XmlObjectBase`
      Returns:
        The schema type for this instance. This is a permanent, unchanging property of the instance.

    - #### compute_text

          protected String compute_text(NamespaceManager nsm)

      Description copied from class: `XmlObjectBase`
      This should return the canonical string value of the primitive. Only called when non-nil.
      Specified by:
        `compute_text` in class `XmlObjectBase`

    - #### set_text

          protected void set_text(String s)

      Description copied from class: `XmlObjectBase`
      This should set the value of the type from text, or throw an XmlValueOutOfRangeException if it can't.
      Specified by:
        `set_text` in class `XmlObjectBase`

    - #### set_nil

          protected void set_nil()

      Description copied from class: `XmlObjectBase`
      This should clear the value, and set it to whatever is supposed to be returned when the value is nilled.
      Specified by:
        `set_nil` in class `XmlObjectBase`

    - #### validateLexical

          public static void validateLexical(String v,
                                             ValidationContext context)

      Performs lexical validation only.

    - #### getBigDecimalValue

          public BigDecimal getBigDecimalValue()

      Description copied from interface: `SimpleValue`
      Returns the value as a `BigDecimal`.
      Specified by:
        `getBigDecimalValue` in interface `SimpleValue`
      Overrides:
        `getBigDecimalValue` in class `XmlObjectBase`

    - #### set_BigDecimal

          protected void set_BigDecimal(BigDecimal v)

      Overrides:
        `set_BigDecimal` in class `XmlObjectBase`

    - #### compare_to

          protected int compare_to(XmlObject decimal)

      Description copied from class: `XmlObjectBase`
      This implementation of compare_to is allowed to do two unusual things: (1) it can assume that the xmlobj passed has a primitive type underlying the instance type that matches the current instance, and that neither is nil. (2) it is allowed to return 2 for "incomparable"; it should not throw an exception.
      Overrides:
        `compare_to` in class `XmlObjectBase`

    - #### equal_to

          protected boolean equal_to(XmlObject decimal)

      Specified by:
        `equal_to` in class `XmlObjectBase`

    - #### value_hash_code

          protected int value_hash_code()

      Note, this is carefully aligned with hash codes for all xsd:decimal primitives.
      Specified by:
        `value_hash_code` in class `XmlObjectBase`

    - #### decimalHashCode

          protected int decimalHashCode()

      This method will has BigDecimals with the same arithmetic value to the same hash code (eg, 2.3 & 2.30 will have the same hash.) This differs from BigDecimal.hashCode()