Class DateValue

  • All Implemented Interfaces:
    javax.jcr.Value

    public class DateValue
    extends BaseValue
    A DateValue provides an implementation of the Value interface representing a date value.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int TYPE  
    • Constructor Summary

      Constructors 
      Constructor Description
      DateValue​(java.util.Calendar date)
      Constructs a DateValue object representing a date.
    • Constructor Detail

      • DateValue

        public DateValue​(java.util.Calendar date)
                  throws java.lang.IllegalArgumentException
        Constructs a DateValue object representing a date.
        Parameters:
        date - the date this DateValue should represent
        Throws:
        java.lang.IllegalArgumentException - if the given date cannot be represented as defined by ISO 8601.
    • Method Detail

      • valueOf

        public static DateValue valueOf​(java.lang.String s)
                                 throws javax.jcr.ValueFormatException
        Returns a new DateValue initialized to the value represented by the specified String.

        The specified String must be a ISO8601-compliant date/time string.

        Parameters:
        s - the string to be parsed.
        Returns:
        a newly constructed DateValue representing the the specified value.
        Throws:
        javax.jcr.ValueFormatException - If the String is not a valid ISO8601-compliant date/time string.
        See Also:
        ISO8601
      • equals

        public boolean equals​(java.lang.Object obj)
        Indicates whether some other object is "equal to" this one.

        The result is true if and only if the argument is not null and is a DateValue object that represents the same value as this object.

        The value comparison is performed using the ISO 8601 string representation of the dates, since the native Calendar.equals() method may produce false negatives (see JSR-598).

        Note that the comparison still returns false when comparing the same time in different time zones, but that seems to be the intent of JSR 170. Compare the Value.getDate().getTime() values if you need an exact time comparison in UTC.

        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - the reference object with which to compare.
        Returns:
        true if this object is the same as the obj argument; false otherwise.
      • hashCode

        public int hashCode()
        Returns zero to satisfy the Object equals/hashCode contract. This class is mutable and not meant to be used as a hash key.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        always zero
        See Also:
        Object.hashCode()
      • getDate

        public java.util.Calendar getDate()
                                   throws javax.jcr.ValueFormatException,
                                          java.lang.IllegalStateException,
                                          javax.jcr.RepositoryException
        Specified by:
        getDate in interface javax.jcr.Value
        Overrides:
        getDate in class BaseValue
        Throws:
        javax.jcr.ValueFormatException
        java.lang.IllegalStateException
        javax.jcr.RepositoryException
      • getLong

        public long getLong()
                     throws javax.jcr.ValueFormatException,
                            java.lang.IllegalStateException,
                            javax.jcr.RepositoryException
        Specified by:
        getLong in interface javax.jcr.Value
        Overrides:
        getLong in class BaseValue
        Throws:
        javax.jcr.ValueFormatException
        java.lang.IllegalStateException
        javax.jcr.RepositoryException
      • getBoolean

        public boolean getBoolean()
                           throws javax.jcr.ValueFormatException,
                                  java.lang.IllegalStateException,
                                  javax.jcr.RepositoryException
        Specified by:
        getBoolean in interface javax.jcr.Value
        Overrides:
        getBoolean in class BaseValue
        Throws:
        javax.jcr.ValueFormatException
        java.lang.IllegalStateException
        javax.jcr.RepositoryException
      • getDouble

        public double getDouble()
                         throws javax.jcr.ValueFormatException,
                                java.lang.IllegalStateException,
                                javax.jcr.RepositoryException
        Specified by:
        getDouble in interface javax.jcr.Value
        Overrides:
        getDouble in class BaseValue
        Throws:
        javax.jcr.ValueFormatException
        java.lang.IllegalStateException
        javax.jcr.RepositoryException
      • getDecimal

        public java.math.BigDecimal getDecimal()
                                        throws javax.jcr.ValueFormatException,
                                               java.lang.IllegalStateException,
                                               javax.jcr.RepositoryException
        Specified by:
        getDecimal in interface javax.jcr.Value
        Overrides:
        getDecimal in class BaseValue
        Throws:
        javax.jcr.ValueFormatException
        java.lang.IllegalStateException
        javax.jcr.RepositoryException