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
ADateValue
provides an implementation of theValue
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 aDateValue
object representing a date.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
Indicates whether some other object is "equal to" this one.boolean
getBoolean()
java.util.Calendar
getDate()
java.math.BigDecimal
getDecimal()
double
getDouble()
long
getLong()
int
hashCode()
Returns zero to satisfy the Object equals/hashCode contract.static DateValue
valueOf(java.lang.String s)
Returns a newDateValue
initialized 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.IllegalArgumentException
Constructs aDateValue
object representing a date.- Parameters:
date
- the date thisDateValue
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 newDateValue
initialized to the value represented by the specifiedString
.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 theString
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 notnull
and is aDateValue
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 classjava.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 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:
getBoolean
in interfacejavax.jcr.Value
- Overrides:
getBoolean
in classBaseValue
- Throws:
javax.jcr.ValueFormatException
java.lang.IllegalStateException
javax.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:
getDecimal
in interfacejavax.jcr.Value
- Overrides:
getDecimal
in classBaseValue
- Throws:
javax.jcr.ValueFormatException
java.lang.IllegalStateException
javax.jcr.RepositoryException
-
-