Class DateProperty

  • All Implemented Interfaces:
    Serializable
    Direct Known Subclasses:
    DtEnd, DtStart, Due, RecurrenceId, UtcProperty

    public abstract class DateProperty
    extends Property
    $Id$

    Created on 9/07/2005

    Base class for properties with a DATE or DATE-TIME value. Note that some sub-classes may only allow either a DATE or a DATE-TIME value, for which additional rules/validation should be specified.

    See Also:
    Serialized Form
    • Constructor Detail

      • DateProperty

        public DateProperty​(String name,
                            ParameterList parameters,
                            PropertyFactory factory)
        Parameters:
        name - the property name
        parameters - a list of initial parameters
      • DateProperty

        public DateProperty​(String name,
                            PropertyFactory factory)
        Parameters:
        name - the property name
      • DateProperty

        public DateProperty​(String name,
                            TimeZone timezone,
                            PropertyFactory factory)
        Creates a new instance of the named property with an initial timezone.
        Parameters:
        name - property name
        timezone - initial timezone
    • Method Detail

      • getDate

        public final Date getDate()
        Returns:
        Returns the date.
      • setDate

        public final void setDate​(Date date)
        Sets the date value of this property. The timezone and value of this instance will also be updated accordingly.
        Parameters:
        date - The date to set.
      • setValue

        public void setValue​(String value)
                      throws ParseException
        Default setValue() implementation. Allows for either DATE or DATE-TIME values.
        Specified by:
        setValue in class Property
        Parameters:
        value - a string representation of a DATE or DATE-TIME value
        Throws:
        ParseException - where the specified value is not a valid DATE or DATE-TIME representation
      • getValue

        public String getValue()
        Specified by:
        getValue in class Content
        Returns:
        the content value
      • setTimeZone

        public void setTimeZone​(TimeZone timezone)
        Publically available method to update the current timezone.
        Parameters:
        timezone - a timezone instance
      • getTimeZone

        public final TimeZone getTimeZone()
        Returns:
        the timezone
      • setUtc

        public final void setUtc​(boolean utc)
        Resets the VTIMEZONE associated with the property. If utc is true, any TZID parameters are removed and the Java timezone is updated to UTC time. If utc is false, TZID parameters are removed and the Java timezone is set to the default timezone (i.e. represents a "floating" local time)
        Parameters:
        utc - a UTC value
      • isUtc

        public final boolean isUtc()
        Indicates whether the current date value is specified in UTC time.
        Returns:
        true if the property is in UTC time, otherwise false