Package com.iizix.value
Class BinaryValue
- java.lang.Object
- com.iizix.value.BinaryValue
- All Implemented Interfaces:
IValueObject<byte[]>
public class BinaryValue extends java.lang.Object implements 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
Constructors Constructor Description BinaryValue()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longasLong(byte[] value, LocaleInfo localeInfo)Returns a long value if possible.byte[]convert(java.lang.Object value, Value.Type oldType, LocaleInfo localeInfo)Converts a value from another type.byte[]createDefault()Creates the default value object for the data type.java.lang.StringgetDescription()Gets the description of the type, used for the Designer.java.text.FormatgetFormatter(java.lang.String pattern, LocaleInfo localeInfo)Returns the Formatter for a pattern.java.lang.Class<byte[]>getValueClass()Gets the class of the value.Value.TypegetValueType()Gets the value type.byte[]load(java.lang.String value, org.w3c.dom.Element element)Loads the value from an Element.byte[]parse(java.lang.String value)Creates a Value object from a String using a specified pattern and locale.byte[]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.Stringsave(byte[] value, org.w3c.dom.Element element)Saves the value to an Element.java.lang.StringtoString(byte[] value)The default "toString" representation is in hex.java.lang.StringtoString(byte[] value, java.lang.String pattern, LocaleInfo localeInfo)Formats the value to a String.java.lang.StringtoStringForced(java.lang.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
Method Detail
getValueType
public final Value.Type getValueType()
Gets the value type.- Specified by:
getValueTypein interfaceIValueObject<byte[]>- Returns:
- Value.Type.Binary.
getValueClass
public java.lang.Class<byte[]> getValueClass()
Gets the class of the value.- Specified by:
getValueClassin interfaceIValueObject<byte[]>
getDescription
public java.lang.String getDescription()
Gets the description of the type, used for the Designer.- Specified by:
getDescriptionin interfaceIValueObject<byte[]>
createDefault
public byte[] createDefault()
Creates the default value object for the data type.- Specified by:
createDefaultin interfaceIValueObject<byte[]>- Returns:
- The default value.
parse
public byte[] parse(java.lang.String value) throws java.text.ParseExceptionCreates a Value object from a String using a specified pattern and locale.- Specified by:
parsein interfaceIValueObject<byte[]>- Parameters:
value- The value, never null.- Returns:
- The value object, never null.
- Throws:
java.text.ParseException- If the value could not be parsed.
parse
public byte[] parse(java.lang.String value, java.lang.String pattern, LocaleInfo localeInfo) throws java.text.ParseException, java.lang.IllegalArgumentExceptionCreates a Value object from a String using a specified pattern and locale.- Specified by:
parsein 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:
java.text.ParseException- If the value could not be parsed.java.lang.IllegalArgumentException- For pattern errors.
getFormatter
public java.text.Format getFormatter(java.lang.String pattern, LocaleInfo localeInfo) throws java.lang.IllegalArgumentExceptionReturns the Formatter for a pattern.- Specified by:
getFormatterin 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:
java.lang.IllegalArgumentException- For pattern errors.
toString
public java.lang.String toString(byte[] value)
The default "toString" representation is in hex.- Specified by:
toStringin interfaceIValueObject<byte[]>- Parameters:
value- The value could be null.- Returns:
- The String representation.
toString
public java.lang.String toString(byte[] value, java.lang.String pattern, LocaleInfo localeInfo) throws java.lang.IllegalArgumentExceptionFormats the value to a String.- Specified by:
toStringin 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:
java.lang.IllegalArgumentException- For pattern errors.
toStringForced
public java.lang.String toStringForced(java.lang.Object value)
Calls the "toString" method with any object, casting it. IF casting fails, which should not be, thenString.valueOf(value)is called.- Specified by:
toStringForcedin interfaceIValueObject<byte[]>- Parameters:
value- The value could be null.- Returns:
- The String representation.
load
public byte[] load(java.lang.String value, org.w3c.dom.Element element) throws java.lang.ExceptionLoads the value from an Element.- Specified by:
loadin interfaceIValueObject<byte[]>- Parameters:
value- The String value in the element.element- The element holding the information for advanced processing using JAXB.- Throws:
java.lang.Exception- An exception due to parsing, bean unmarshalling, etc.
save
public java.lang.String save(byte[] value, org.w3c.dom.Element element) throws java.lang.ExceptionSaves the value to an Element.- Specified by:
savein 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:
java.lang.Exception
convert
public byte[] convert(java.lang.Object value, Value.Type oldType, LocaleInfo localeInfo) throws java.lang.ExceptionConverts a value from another type. If the type is not defined, check the object instance for possible conversions.- Specified by:
convertin 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:
java.lang.Exception- If a string cannot be parsed from hex.
asLong
public long asLong(byte[] value, LocaleInfo localeInfo)Returns a long value if possible.- Specified by:
asLongin 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.