org.apache.axis.types

Class Duration

public class Duration extends Object implements Serializable

Implementation of the XML Schema type duration. Duration supports a minimum fractional second precision of milliseconds.

Author: Wes Moulder Dominik Kacprzak (dominik@opentoolbox.com)

See Also: XML Schema 3.2.6

Constructor Summary
Duration()
Default no-arg constructor
Duration(boolean negative, int aYears, int aMonths, int aDays, int aHours, int aMinutes, double aSeconds)
Duration(String duration)
Constructs Duration from a String in an xsd:duration format - PnYnMnDTnHnMnS.
Duration(boolean negative, Calendar calendar)
Constructs Duration from a Calendar.
Method Summary
booleanequals(Object object)
The equals method compares the time represented by duration object, not its string representation.
CalendargetAsCalendar()
Returns duration as a calendar.
CalendargetAsCalendar(Calendar startTime)
Returns duration as a calendar.
intgetDays()
intgetHours()
intgetMinutes()
intgetMonths()
doublegetSeconds()
intgetYears()
inthashCode()
booleanisNegative()
voidparseDate(String date)
This method parses the date portion of a String that represents xsd:duration - nYnMnD.
voidparseTime(String time)
This method parses the time portion of a String that represents xsd:duration - nHnMnS.
voidsetDays(int days)
voidsetHours(int hours)
voidsetMinutes(int minutes)
voidsetMonths(int months)
voidsetNegative(boolean negative)
voidsetSeconds(int seconds)
voidsetSeconds(double seconds)
Sets the seconds.
voidsetYears(int years)
StringtoString()
This returns the xml representation of an xsd:duration object.

Constructor Detail

Duration

public Duration()
Default no-arg constructor

Duration

public Duration(boolean negative, int aYears, int aMonths, int aDays, int aHours, int aMinutes, double aSeconds)

Parameters: negative aYears aMonths aDays aHours aMinutes aSeconds

Duration

public Duration(String duration)
Constructs Duration from a String in an xsd:duration format - PnYnMnDTnHnMnS.

Parameters: duration String

Throws: SchemaException if the string doesn't parse correctly.

Duration

public Duration(boolean negative, Calendar calendar)
Constructs Duration from a Calendar.

Parameters: calendar Calendar

Throws: IllegalArgumentException if the calendar object does not represent any date nor time.

Method Detail

equals

public boolean equals(Object object)
The equals method compares the time represented by duration object, not its string representation. Hence, a duration object representing 65 minutes is considered equal to a duration object representing 1 hour and 5 minutes.

Parameters: object

getAsCalendar

public Calendar getAsCalendar()
Returns duration as a calendar. Due to the way a Calendar class works, the values for particular fields may not be the same as obtained through getter methods. For example, if a duration's object getMonths returns 20, a similar call on a calendar object will return 1 year and 8 months.

Returns: Calendar

getAsCalendar

public Calendar getAsCalendar(Calendar startTime)
Returns duration as a calendar. Due to the way a Calendar class works, the values for particular fields may not be the same as obtained through getter methods. For example, if a Duration's object getMonths returns 20, a similar call on a Calendar object will return 1 year and 8 months.

Parameters: startTime Calendar

Returns: Calendar

getDays

public int getDays()

getHours

public int getHours()

getMinutes

public int getMinutes()

getMonths

public int getMonths()

getSeconds

public double getSeconds()

getYears

public int getYears()

hashCode

public int hashCode()

isNegative

public boolean isNegative()

parseDate

public void parseDate(String date)
This method parses the date portion of a String that represents xsd:duration - nYnMnD.

Parameters: date

Throws: IllegalArgumentException if date does not match pattern

parseTime

public void parseTime(String time)
This method parses the time portion of a String that represents xsd:duration - nHnMnS.

Parameters: time

Throws: IllegalArgumentException if time does not match pattern

setDays

public void setDays(int days)

Parameters: days

setHours

public void setHours(int hours)

Parameters: hours

setMinutes

public void setMinutes(int minutes)

Parameters: minutes

setMonths

public void setMonths(int months)

Parameters: months

setNegative

public void setNegative(boolean negative)

Parameters: negative

setSeconds

public void setSeconds(int seconds)

Deprecated: use setSeconds(double) instead

Parameters: seconds

setSeconds

public void setSeconds(double seconds)
Sets the seconds. NOTE: The fractional value of seconds is rounded up to milliseconds.

Parameters: seconds double

setYears

public void setYears(int years)

Parameters: years

toString

public String toString()
This returns the xml representation of an xsd:duration object.
Copyright B) 2005 Apache Web Services Project. All Rights Reserved.