Class 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
    • Constructor Detail

      • PeriodValue

        public PeriodValue()
    • 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.