Package org.apache.jackrabbit.value
Class DateValue
- java.lang.Object
-
- org.apache.jackrabbit.value.BaseValue
-
- org.apache.jackrabbit.value.DateValue
-
- All Implemented Interfaces:
javax.jcr.Value
public class DateValue extends BaseValue
ADateValueprovides an implementation of theValueinterface representing a date value.
-
-
Field Summary
Fields Modifier and Type Field Description static intTYPE
-
Constructor Summary
Constructors Constructor Description DateValue(java.util.Calendar date)Constructs aDateValueobject representing a date.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)Indicates whether some other object is "equal to" this one.booleangetBoolean()java.util.CalendargetDate()java.math.BigDecimalgetDecimal()doublegetDouble()longgetLong()inthashCode()Returns zero to satisfy the Object equals/hashCode contract.static DateValuevalueOf(java.lang.String s)Returns a newDateValueinitialized to the value represented by the specifiedString.
-
-
-
Field Detail
-
TYPE
public static final int TYPE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DateValue
public DateValue(java.util.Calendar date) throws java.lang.IllegalArgumentExceptionConstructs aDateValueobject representing a date.- Parameters:
date- the date thisDateValueshould 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 newDateValueinitialized to the value represented by the specifiedString.The specified
Stringmust be a ISO8601-compliant date/time string.- Parameters:
s- the string to be parsed.- Returns:
- a newly constructed
DateValuerepresenting the the specified value. - Throws:
javax.jcr.ValueFormatException- If theStringis 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
trueif and only if the argument is notnulland is aDateValueobject 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:
equalsin classjava.lang.Object- Parameters:
obj- the reference object with which to compare.- Returns:
trueif this object is the same as the obj argument;falseotherwise.
-
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:
hashCodein classjava.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
-
getLong
public long getLong() 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:
getBooleanin interfacejavax.jcr.Value- Overrides:
getBooleanin classBaseValue- Throws:
javax.jcr.ValueFormatExceptionjava.lang.IllegalStateExceptionjavax.jcr.RepositoryException
-
getDouble
public double getDouble() 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:
getDecimalin interfacejavax.jcr.Value- Overrides:
getDecimalin classBaseValue- Throws:
javax.jcr.ValueFormatExceptionjava.lang.IllegalStateExceptionjavax.jcr.RepositoryException
-
-