Package com.iizix.value
Class PeriodValue
- java.lang.Object
- com.iizix.value.TermporalAmountValue<java.time.Period>
- com.iizix.value.PeriodValue
- All Implemented Interfaces:
IValueObject<java.time.Period>
public class PeriodValue extends TermporalAmountValue<java.time.Period>
Value object class to handle the Period 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 PeriodValue()
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description long
asLong(java.time.Period value, LocaleInfo localeInfo)
Returns a long value if possible.java.time.Period
convert(java.lang.Object value, Value.Type oldType, LocaleInfo localeInfo)
Converts a value from another type.java.time.Period
createDefault()
Creates the default value object for the data type.static java.time.Period
fromEpochMillis(long millis)
Helper method to create a Period of milliseconds since the Epoch (1970-01-01 00:00:00 GMT+0:00).java.lang.String
getDescription()
Gets the description of the type, used for the Designer.java.lang.Class<java.time.Period>
getValueClass()
Gets the class of the value.Value.Type
getValueType()
Gets the value type.java.time.Period
parse(java.lang.String value)
Creates a Value object from a String using a specified pattern and locale.Methods inherited from class com.iizix.value.TermporalAmountValue
getFormatter, load, parse, save, toString, toString
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, toStringForced
Method Detail
getValueType
public final Value.Type getValueType()
Gets the value type.- Returns:
- Value.Type.Period.
fromEpochMillis
public static java.time.Period fromEpochMillis(long millis)
Helper method to create a Period of milliseconds since the Epoch (1970-01-01 00:00:00 GMT+0:00).- Returns:
- A Period that truncates the time part.
getValueClass
public java.lang.Class<java.time.Period> getValueClass()
Gets the class of the value.
getDescription
public java.lang.String getDescription()
Gets the description of the type, used for the Designer.
createDefault
public java.time.Period createDefault()
Creates the default value object for the data type.- Returns:
- The default value.
parse
public java.time.Period parse(java.lang.String value) throws java.text.ParseException, java.lang.IllegalAccessException, java.lang.Exception
Creates a Value object from a String using a specified pattern and locale.- Parameters:
value
- The value, never null.- Returns:
- The value object, never null.
- Throws:
java.text.ParseException
- If the value could not be parsed.java.lang.IllegalArgumentException
- For pattern errors.java.lang.Exception
- For other errors.java.lang.IllegalAccessException
convert
public java.time.Period convert(java.lang.Object value, Value.Type oldType, LocaleInfo localeInfo) throws java.lang.Exception
Converts a value from another type. If the type is not defined, check the object instance for possible conversions.- 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
- For other errors.
asLong
public long asLong(java.time.Period value, LocaleInfo localeInfo)
Returns a long value if possible.- 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.