Package com.iizix.value
Class BinaryValue
java.lang.Object
com.iizix.value.BinaryValue
- All Implemented Interfaces:
IValueObject<byte[]>
Value object class to handle the byte array datatype.
- 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
Method Summary
Modifier and TypeMethodDescriptionlong
asLong
(byte[] value, LocaleInfo localeInfo) Returns a long value if possible.byte[]
convert
(Object value, Value.Type oldType, LocaleInfo localeInfo) Converts a value from another type.byte[]
Creates the default value object for the data type.Gets the description of the type, used for the Designer.getFormatter
(String pattern, LocaleInfo localeInfo) Returns the Formatter for a pattern.Class
<byte[]> Gets the class of the value.final Value.Type
Gets the value type.byte[]
Loads the value from an Element.byte[]
Creates a Value object from a String using a specified pattern and locale.byte[]
parse
(String value, String pattern, LocaleInfo localeInfo) Creates a Value object from a String using a specified pattern and locale.Saves the value to an Element.toString
(byte[] value) The default "toString" representation is in hex.toString
(byte[] value, String pattern, LocaleInfo localeInfo) Formats the value to a String.toStringForced
(Object value) Calls the "toString" method with any object, casting it.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, isRightAligned, saveCast, toStringCast
Constructor Details
BinaryValue
public BinaryValue()
Method Details
getValueType
Gets the value type.- Specified by:
getValueType
in interfaceIValueObject<byte[]>
- Returns:
- Value.Type.Binary.
getValueClass
Gets the class of the value.- Specified by:
getValueClass
in interfaceIValueObject<byte[]>
getDescription
Gets the description of the type, used for the Designer.- Specified by:
getDescription
in interfaceIValueObject<byte[]>
createDefault
public byte[] createDefault()Creates the default value object for the data type.- Specified by:
createDefault
in interfaceIValueObject<byte[]>
- Returns:
- The default value.
parse
Creates a Value object from a String using a specified pattern and locale.- Specified by:
parse
in interfaceIValueObject<byte[]>
- Parameters:
value
- The value, never null.- Returns:
- The value object, never null.
- Throws:
ParseException
- If the value could not be parsed.
parse
public byte[] parse(String value, String pattern, LocaleInfo localeInfo) throws ParseException, IllegalArgumentException Creates a Value object from a String using a specified pattern and locale.- Specified by:
parse
in interfaceIValueObject<byte[]>
- 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:
ParseException
- If the value could not be parsed.IllegalArgumentException
- For pattern errors.
getFormatter
Returns the Formatter for a pattern.- Specified by:
getFormatter
in interfaceIValueObject<byte[]>
- 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:
IllegalArgumentException
- For pattern errors.
toString
The default "toString" representation is in hex.- Specified by:
toString
in interfaceIValueObject<byte[]>
- Parameters:
value
- The value could be null.- Returns:
- The String representation.
toString
public String toString(byte[] value, String pattern, LocaleInfo localeInfo) throws IllegalArgumentException Formats the value to a String.- Specified by:
toString
in interfaceIValueObject<byte[]>
- 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:
IllegalArgumentException
- For pattern errors.
toStringForced
Calls the "toString" method with any object, casting it. IF casting fails, which should not be, thenString.valueOf(value)
is called.- Specified by:
toStringForced
in interfaceIValueObject<byte[]>
- Parameters:
value
- The value could be null.- Returns:
- The String representation.
load
Loads the value from an Element.- Specified by:
load
in interfaceIValueObject<byte[]>
- Parameters:
value
- The String value in the element.element
- The element holding the information for advanced processing using JAXB.- Throws:
Exception
- An exception due to parsing, bean unmarshalling, etc.
save
Saves the value to an Element.- Specified by:
save
in interfaceIValueObject<byte[]>
- 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.
- Throws:
Exception
convert
Converts a value from another type. If the type is not defined, check the object instance for possible conversions.- Specified by:
convert
in interfaceIValueObject<byte[]>
- Parameters:
value
- The value to convert.oldType
- The old type, null for not defined.localeInfo
- The locale information, null to look-up from current thread or if not found, for system default.- Returns:
- The value object.
- Throws:
Exception
- If a string cannot be parsed from hex.
asLong
Returns a long value if possible.- Specified by:
asLong
in interfaceIValueObject<byte[]>
- 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.