Package com.iizix.value
Class TermporalAccessorValue<TYPE extends java.time.temporal.TemporalAccessor>
- java.lang.Object
- com.iizix.value.TermporalAccessorValue<TYPE>
- All Implemented Interfaces:
IValueObject<TYPE>
- Direct Known Subclasses:
LocalDateTimeValue
,LocalDateValue
,LocalTimeValue
,MonthDayValue
,OffsetDateTimeValue
,OffsetTimeValue
,YearMonthValue
,YearValue
,ZonedDateTimeValue
public abstract class TermporalAccessorValue<TYPE extends java.time.temporal.TemporalAccessor> extends java.lang.Object implements IValueObject<TYPE>
TemporalAccessor Value object base class, i.e. date and time based 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 TermporalAccessorValue()
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static java.time.ZoneOffset
_getSystemZoneOffset()
Helper to get the system ZoneOffset.java.text.Format
getFormatter(java.lang.String pattern, LocaleInfo localeInfo)
Returns the Formatter for a pattern.TYPE
load(java.lang.String value, org.w3c.dom.Element element)
Loads the value from an Element.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.abstract TYPE
parse(java.lang.String value, java.time.format.DateTimeFormatter formatter)
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
asLong, asLongCast, convert, createDefault, getDescription, getValueClass, getValueType, isRightAligned, parse, saveCast, toStringCast, toStringForced
Method Detail
_getSystemZoneOffset
public static java.time.ZoneOffset _getSystemZoneOffset()
Helper to get the system ZoneOffset. This may fail and if so, a warning is logged and ZoneOffset.UTC is returned.
getFormatter
public final java.text.Format getFormatter(java.lang.String pattern, LocaleInfo localeInfo)
Returns the Formatter for a pattern.- Specified by:
getFormatter
in interfaceIValueObject<TYPE extends java.time.temporal.TemporalAccessor>
- 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.
toString
public final java.lang.String toString(TYPE value)
The default "toString" representation.- Specified by:
toString
in interfaceIValueObject<TYPE extends java.time.temporal.TemporalAccessor>
- Parameters:
value
- The value could be null.- Returns:
- The String representation.
toString
public java.lang.String toString(TYPE value, java.lang.String pattern, LocaleInfo localeInfo)
Formats the value to a String.- Specified by:
toString
in interfaceIValueObject<TYPE extends java.time.temporal.TemporalAccessor>
- 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.
parse
public abstract TYPE parse(java.lang.String value, java.time.format.DateTimeFormatter formatter) throws java.text.ParseException, java.lang.Exception
Creates a Value object from a String using a specified pattern and locale.- Parameters:
value
- The value, never null.formatter
- The formatter, never null.- 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 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.time.temporal.TemporalAccessor>
- 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.
load
public final TYPE load(java.lang.String value, org.w3c.dom.Element element) throws java.lang.Exception
Loads the value from an Element.- Specified by:
load
in interfaceIValueObject<TYPE extends java.time.temporal.TemporalAccessor>
- 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 final java.lang.String save(TYPE value, org.w3c.dom.Element element) throws java.lang.Exception
Saves the value to an Element.- Specified by:
save
in interfaceIValueObject<TYPE extends java.time.temporal.TemporalAccessor>
- 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