org.jfree.data.time

Class Year

Implemented Interfaces:
Comparable, MonthConstants, Serializable, TimePeriod

public class Year
extends RegularTimePeriod
implements Serializable

Represents a year in the range 1900 to 9999. This class is immutable, which is a requirement for all RegularTimePeriod subclasses.

Field Summary

Fields inherited from class org.jfree.data.time.RegularTimePeriod

DEFAULT_TIME_ZONE, WORKING_CALENDAR

Constructor Summary

Year()
Creates a new Year, based on the current system date/time.
Year(Date time)
Creates a new Year, based on a particular instant in time, using the default time zone.
Year(Date time, TimeZone zone)
Constructs a year, based on a particular instant in time and a time zone.
Year(int year)
Creates a time period representing a single year.

Method Summary

int
compareTo(Object o1)
Returns an integer indicating the order of this Year object relative to the specified object: negative == before, zero == same, positive == after.
boolean
equals(Object object)
Tests the equality of this Year object to an arbitrary object.
long
getFirstMillisecond()
Returns the first millisecond of the year.
long
getFirstMillisecond(Calendar calendar)
Returns the first millisecond of the year, evaluated using the supplied calendar (which determines the time zone).
long
getLastMillisecond()
Returns the last millisecond of the year.
long
getLastMillisecond(Calendar calendar)
Returns the last millisecond of the year, evaluated using the supplied calendar (which determines the time zone).
long
getSerialIndex()
Returns a serial index number for the year.
int
getYear()
Returns the year.
int
hashCode()
Returns a hash code for this object instance.
RegularTimePeriod
next()
Returns the year following this one.
static Year
parseYear(String s)
Parses the string argument as a year.
void
peg(Calendar calendar)
Recalculates the start date/time and end date/time for this time period relative to the supplied calendar (which incorporates a time zone).
RegularTimePeriod
previous()
Returns the year preceding this one.
String
toString()
Returns a string representing the year..

Methods inherited from class org.jfree.data.time.RegularTimePeriod

createInstance, downsize, getEnd, getFirstMillisecond, getFirstMillisecond, getFirstMillisecond, getLastMillisecond, getLastMillisecond, getLastMillisecond, getMiddleMillisecond, getMiddleMillisecond, getMiddleMillisecond, getSerialIndex, getStart, next, peg, previous, toString

Constructor Details

Year

public Year()
Creates a new Year, based on the current system date/time.

Year

public Year(Date time)
Creates a new Year, based on a particular instant in time, using the default time zone.
Parameters:
time - the time (null not permitted).

Year

public Year(Date time,
            TimeZone zone)
Constructs a year, based on a particular instant in time and a time zone.
Parameters:
time - the time.
zone - the time zone.

Year

public Year(int year)
Creates a time period representing a single year.
Parameters:
year - the year.

Method Details

compareTo

public int compareTo(Object o1)
Returns an integer indicating the order of this Year object relative to the specified object: negative == before, zero == same, positive == after.
Parameters:
o1 - the object to compare.
Returns:
negative == before, zero == same, positive == after.

equals

public boolean equals(Object object)
Tests the equality of this Year object to an arbitrary object. Returns true if the target is a Year instance representing the same year as this object. In all other cases, returns false.
Parameters:
object - the object (null permitted).
Returns:
true if the year of this and the object are the same.

getFirstMillisecond

public long getFirstMillisecond()
Returns the first millisecond of the year. This will be determined relative to the time zone specified in the constructor, or in the calendar instance passed in the most recent call to the peg(Calendar) method.
Overrides:
getFirstMillisecond in interface RegularTimePeriod
Returns:
The first millisecond of the year.

getFirstMillisecond

public long getFirstMillisecond(Calendar calendar)
Returns the first millisecond of the year, evaluated using the supplied calendar (which determines the time zone).
Overrides:
getFirstMillisecond in interface RegularTimePeriod
Parameters:
calendar - the calendar (null not permitted).
Returns:
The first millisecond of the year.

getLastMillisecond

public long getLastMillisecond()
Returns the last millisecond of the year. This will be determined relative to the time zone specified in the constructor, or in the calendar instance passed in the most recent call to the peg(Calendar) method.
Overrides:
getLastMillisecond in interface RegularTimePeriod
Returns:
The last millisecond of the year.

getLastMillisecond

public long getLastMillisecond(Calendar calendar)
Returns the last millisecond of the year, evaluated using the supplied calendar (which determines the time zone).
Overrides:
getLastMillisecond in interface RegularTimePeriod
Parameters:
calendar - the calendar (null not permitted).
Returns:
The last millisecond of the year.

getSerialIndex

public long getSerialIndex()
Returns a serial index number for the year.

The implementation simply returns the year number (e.g. 2002).

Overrides:
getSerialIndex in interface RegularTimePeriod
Returns:
The serial index number.

getYear

public int getYear()
Returns the year.
Returns:
The year.

hashCode

public int hashCode()
Returns a hash code for this object instance. The approach described by Joshua Bloch in "Effective Java" has been used here:

http://developer.java.sun.com/developer/Books/effectivejava /Chapter3.pdf

Returns:
A hash code.

next

public RegularTimePeriod next()
Returns the year following this one.
Overrides:
next in interface RegularTimePeriod
Returns:
The year following this one (or null if the current year is 9999).

parseYear

public static Year parseYear(String s)
Parses the string argument as a year.

The string format is YYYY.

Parameters:
s - a string representing the year.
Returns:
null if the string is not parseable, the year otherwise.

peg

public void peg(Calendar calendar)
Recalculates the start date/time and end date/time for this time period relative to the supplied calendar (which incorporates a time zone).
Overrides:
peg in interface RegularTimePeriod
Parameters:
calendar - the calendar (null not permitted).
Since:
1.0.3

previous

public RegularTimePeriod previous()
Returns the year preceding this one.
Overrides:
previous in interface RegularTimePeriod
Returns:
The year preceding this one (or null if the current year is 1900).

toString

public String toString()
Returns a string representing the year..
Overrides:
toString in interface RegularTimePeriod
Returns:
A string representing the year.