org.exolab.castor.types

Class Date

Implemented Interfaces:
Cloneable, java.io.Serializable

public class Date
extends DateTimeBase

Describe an XML Schema Date.

The format is defined by W3C XML Schema Recommendation and ISO8601 i.e (-)CCYY-MM-DD(Z|(+|-)hh:mm)

Version:
$Revision: 7289 $
Authors:
Arnaud Blandin
Edward Kuns
See Also:
Serialized Form

Field Summary

Fields inherited from class org.exolab.castor.types.DateTimeBase

EQUALS, GREATER_THAN, INDETERMINATE, LESS_THAN, MAX_TIME_ZONE_COMPARISON_OFFSET, WRONGLY_PLACED

Constructor Summary

Date()
No-arg constructor.
Date(String date)
Constructs a date from a string.
Date(java.util.Date dateRef)
This constructor is used to convert a java.util.Date into a new org.exolab.castor.types.Date.
Date(long dateAsLong)
This constructor is used to convert a long value representing a Date to a new org.exolab.castor.types.Date instance.
Date(short[] values)
Constructs a XML Schema Date instance given all the values of the different fields.

Method Summary

short
getHour()
short
getMilli()
short
getMinute()
short
getSeconds()
short[]
getValues()
Returns an array of short with all the fields that describe this Date type.
boolean
hasHour()
boolean
hasMilli()
boolean
hasMinute()
boolean
hasSeconds()
static Object
parse(String str)
parse a String and convert it into an java.lang.Object
static Date
parseDate(String str)
parse a String and convert it into a Date.
void
setHour(short hour)
Sets the hour field for this date/time type.
void
setMilliSecond(short millisecond)
Sets the millisecond field for this date/time type.
void
setMinute(short minute)
set the minute field for this date/time type.
void
setSecond(short second)
Sets the seconds field for this date/time type, not including the fractional seconds.
void
setValues(short[] values)
Sets all the fields by reading the values in an array.
java.util.Date
toDate()
Converts this Date into a local java.util.Date.
long
toLong()
Converts this date into a long value.
String
toString()
convert this Date to a string The format is defined by W3C XML Schema recommendation and ISO8601 i.e (+|-)CCYY-MM-DD

Methods inherited from class org.exolab.castor.types.DateTimeBase

addDuration, appendDateString, appendTimeString, appendTimeZoneString, clone, compareTo, equal, equals, getCentury, getDay, getHour, getMilli, getMinute, getMonth, getSeconds, getValues, getYear, getZoneHour, getZoneMinute, hasCentury, hasDay, hasHour, hasIsNegative, hasMilli, hasMinute, hasMonth, hasSeconds, hasYear, hashCode, isLeap, isNegative, isUTC, isZoneNegative, normalize, parseDay, parseMonth, parseTime, parseTimeZone, parseYear, setCentury, setDateFormatTimeZone, setDateFormatTimeZone, setDay, setHour, setMilliSecond, setMinute, setMonth, setNegative, setSecond, setSecond, setUTC, setValues, setYear, setZone, setZoneHour, setZoneMinute, setZoneNegative, toCalendar, toDate

Constructor Details

Date

public Date()
No-arg constructor.

Date

public Date(String date)
            throws ParseException
Constructs a date from a string.
Parameters:
date - the string representing the date

Date

public Date(java.util.Date dateRef)
This constructor is used to convert a java.util.Date into a new org.exolab.castor.types.Date.

Note : all the information concerning the time part of the java.util.Date is lost since a W3C Schema Date only represents CCYY-MM-YY.

Parameters:
dateRef - the java.util.Date to use to construct a new org.exolab.castor.types.Date

Date

public Date(long dateAsLong)
This constructor is used to convert a long value representing a Date to a new org.exolab.castor.types.Date instance.

Note : all the information concerning the time part of the java.util.Date is lost since a W3C Schema Date only represents CCYY-MM-YY

Parameters:
dateAsLong - Date represented in from of a long value.

Date

public Date(short[] values)
Constructs a XML Schema Date instance given all the values of the different fields. By default a Date is not UTC and is local.
Parameters:
values - an array of shorts that represent the different fields of Time.

Method Details

getHour

public short getHour()
Overrides:
getHour in interface DateTimeBase

getMilli

public short getMilli()
Overrides:
getMilli in interface DateTimeBase

getMinute

public short getMinute()
Overrides:
getMinute in interface DateTimeBase

getSeconds

public short getSeconds()
Overrides:
getSeconds in interface DateTimeBase

getValues

public short[] getValues()
Returns an array of short with all the fields that describe this Date type.

Note:the time zone is not included.

Overrides:
getValues in interface DateTimeBase
Returns:
an array of short with all the fields that describe this Date type.

hasHour

public boolean hasHour()
Overrides:
hasHour in interface DateTimeBase

hasMilli

public boolean hasMilli()
Overrides:
hasMilli in interface DateTimeBase

hasMinute

public boolean hasMinute()
Overrides:
hasMinute in interface DateTimeBase

hasSeconds

public boolean hasSeconds()
Overrides:
hasSeconds in interface DateTimeBase

parse

public static Object parse(String str)
            throws ParseException
parse a String and convert it into an java.lang.Object
Parameters:
str - the string to parse
Returns:
an Object represented by the string

parseDate

public static Date parseDate(String str)
            throws ParseException
parse a String and convert it into a Date.
Parameters:
str - the string to parse
Returns:
the Date represented by the string

setHour

public void setHour(short hour)
Sets the hour field for this date/time type.
Overrides:
setHour in interface DateTimeBase
Parameters:
hour - the hour to set

setMilliSecond

public void setMilliSecond(short millisecond)
Sets the millisecond field for this date/time type.
Overrides:
setMilliSecond in interface DateTimeBase
Parameters:
millisecond - the millisecond to set

setMinute

public void setMinute(short minute)
set the minute field for this date/time type.
Overrides:
setMinute in interface DateTimeBase
Parameters:
minute - the minute to set.

setSecond

public void setSecond(short second)
Sets the seconds field for this date/time type, not including the fractional seconds. Any fractional seconds previously set is unmodified.
Overrides:
setSecond in interface DateTimeBase
Parameters:
second - the second to set

setValues

public void setValues(short[] values)
Overrides:
setValues in interface DateTimeBase
Parameters:
values - an array of shorts with the values the array is supposed to be of length 4 and ordered like the following:
  • century
  • year
  • month
  • day

toDate

public java.util.Date toDate()
Converts this Date into a local java.util.Date.
Overrides:
toDate in interface DateTimeBase
Returns:
a local date representing this Date.

toLong

public long toLong()
Converts this date into a long value.
Returns:
This date instance as a long value.

toString

public String toString()
convert this Date to a string The format is defined by W3C XML Schema recommendation and ISO8601 i.e (+|-)CCYY-MM-DD
Returns:
a string representing this Date

Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com