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
-
-