Package com.iizix.value
Class NumberValue<TYPE extends java.lang.Number>
- java.lang.Object
-
- com.iizix.value.NumberValue<TYPE>
-
- All Implemented Interfaces:
IValueObject<TYPE>
- Direct Known Subclasses:
BigDecimalValue
,BigIntegerValue
,ByteValue
,DoubleValue
,FloatValue
,IntegerValue
,LongValue
,ShortValue
public abstract class NumberValue<TYPE extends java.lang.Number> extends java.lang.Object implements IValueObject<TYPE>
Base class for Number values.- Author:
- Christopher Mindus
-
-
Field Summary
-
Fields inherited from interface com.iizix.value.IValueObject
PATTERN_BASIC_ISO_DATE, PATTERN_CURRENCY, PATTERN_FULL, PATTERN_INTEGER, PATTERN_ISO_DATE, PATTERN_ISO_DATE_TIME, PATTERN_ISO_INSTANT, PATTERN_ISO_LOCAL_DATE, PATTERN_ISO_LOCAL_DATE_TIME, PATTERN_ISO_LOCAL_TIME, PATTERN_ISO_OFFSET_DATE, PATTERN_ISO_OFFSET_DATE_TIME, PATTERN_ISO_OFFSET_TIME, PATTERN_ISO_ORDINAL_DATE, PATTERN_ISO_TIME, PATTERN_ISO_WEEK_DATE, PATTERN_ISO_ZONED_DATE_TIME, PATTERN_LONG, PATTERN_MEDIUM, PATTERN_PERCENT, PATTERN_RFC_1123_DATE_TIME, PATTERN_SHORT, RESOLVER_LENIENT, RESOLVER_LENIENT_NO_BRACKETS, RESOLVER_SMART, RESOLVER_SMART_NO_BRACKETS, RESOLVER_STRICT, RESOLVER_STRICT_NO_BRACKETS
-
-
Constructor Summary
Constructors Constructor Description NumberValue()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description long
asLong(TYPE value, LocaleInfo localeInfo)
Returns a long value if possible.java.text.NumberFormat
getFormatter(java.lang.String pattern, LocaleInfo localeInfo)
Returns the Formatter for a pattern.boolean
isRightAligned()
Checks if this type is right-aligned in table columns.TYPE
load(java.lang.String value, org.w3c.dom.Element element)
Loads the value from an Element.abstract TYPE
parse(java.lang.String value)
Creates a Value object from a String using a specified pattern and locale.TYPE
parse(java.lang.String value, java.lang.String pattern, LocaleInfo localeInfo)
Creates a Value object from a String using a specified pattern and locale.java.lang.String
save(TYPE value, org.w3c.dom.Element element)
Saves the value to an Element.java.lang.String
toString(TYPE value)
The default "toString" representation.java.lang.String
toString(TYPE value, java.lang.String pattern, LocaleInfo localeInfo)
Formats the value to a String.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.iizix.value.IValueObject
asLongCast, convert, createDefault, getDescription, getValueClass, getValueType, saveCast, toStringCast, toStringForced
-
-
-
-
Method Detail
-
isRightAligned
public final boolean isRightAligned()
Checks if this type is right-aligned in table columns.- Specified by:
isRightAligned
in interfaceIValueObject<TYPE extends java.lang.Number>
- Returns:
- true for right-aligned values, default is false: left-aligned.
-
getFormatter
public final java.text.NumberFormat getFormatter(java.lang.String pattern, LocaleInfo localeInfo) throws java.lang.IllegalArgumentException
Returns the Formatter for a pattern.- Specified by:
getFormatter
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
pattern
- The pattern to use, null for none.localeInfo
- The locale information instance, or null for none.- Returns:
- The formatter to use, or null for none.
- Throws:
java.lang.IllegalArgumentException
- For pattern errors.
-
toString
public final java.lang.String toString(TYPE value)
The default "toString" representation.- Specified by:
toString
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The value could be null.- Returns:
- The String representation.
-
toString
public final java.lang.String toString(TYPE value, java.lang.String pattern, LocaleInfo localeInfo) throws java.lang.Exception
Formats the value to a String.- Specified by:
toString
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The value is never null.pattern
- Pattern to use, null for none.localeInfo
- The locale information instance, or null for none.- Returns:
- The String representation using specified pattern and locale information.
- Throws:
java.lang.Exception
- For formatter errors.
-
parse
public final TYPE parse(java.lang.String value, java.lang.String pattern, LocaleInfo localeInfo) throws java.text.ParseException, java.lang.Exception
Creates a Value object from a String using a specified pattern and locale.- Specified by:
parse
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The value, never null.pattern
- The pattern, null for none.localeInfo
- The locale info, null for default.- Returns:
- The value object, never null.
- Throws:
java.text.ParseException
- If the value could not be parsed.java.lang.Exception
- For other errors.
-
parse
public abstract TYPE parse(java.lang.String value) throws java.lang.NumberFormatException
Creates a Value object from a String using a specified pattern and locale.- Specified by:
parse
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The value, never null.- Returns:
- The value object, never null.
- Throws:
java.lang.NumberFormatException
- For number format errors.
-
load
public final TYPE load(java.lang.String value, org.w3c.dom.Element element) throws java.text.ParseException
Loads the value from an Element.- Specified by:
load
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The String value in the element.element
- The element holding the information for advanced processing using JAXB.- Throws:
java.text.ParseException
- An exception due to parsing, bean unmarshalling, etc.
-
save
public final java.lang.String save(TYPE value, org.w3c.dom.Element element)
Saves the value to an Element.- Specified by:
save
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The value to save.element
- The element to save information into for advanced processing using JAXB.- Returns:
- The String value to set in the Element, or null if advanced processing is used.
-
asLong
public final long asLong(TYPE value, LocaleInfo localeInfo)
Returns a long value if possible.- Specified by:
asLong
in interfaceIValueObject<TYPE extends java.lang.Number>
- Parameters:
value
- The Value object.localeInfo
- The locale information, null to look-up from current thread or if not found, for system default.- Returns:
- The long value, e.g. in milliseconds, or Long.MIN_VALUE for not possible.
-
-