org.jfree.data.time

Class SimpleTimePeriod

Implemented Interfaces:
Comparable, Serializable, TimePeriod

public class SimpleTimePeriod
extends java.lang.Object
implements TimePeriod, Comparable, Serializable

An arbitrary period of time, measured to millisecond precision using java.util.Date.

This class is intentionally immutable (that is, once constructed, you cannot alter the start and end attributes).

Constructor Summary

SimpleTimePeriod(Date start, Date end)
Creates a new time allocation.
SimpleTimePeriod(long start, long end)
Creates a new time allocation.

Method Summary

int
compareTo(Object obj)
Returns an integer that indicates the relative ordering of two time periods.
boolean
equals(Object obj)
Tests this time period instance for equality with an arbitrary object.
Date
getEnd()
Returns the end date/time.
Date
getStart()
Returns the start date/time.
int
hashCode()
Returns a hash code for this object instance.

Constructor Details

SimpleTimePeriod

public SimpleTimePeriod(Date start,
                        Date end)
Creates a new time allocation.
Parameters:
start - the start date/time (null not permitted).
end - the end date/time (null not permitted).

SimpleTimePeriod

public SimpleTimePeriod(long start,
                        long end)
Creates a new time allocation.
Parameters:
start - the start date/time in milliseconds.
end - the end date/time in milliseconds.

Method Details

compareTo

public int compareTo(Object obj)
Returns an integer that indicates the relative ordering of two time periods.
Parameters:
obj - the object (null not permitted).
Returns:
An integer.

equals

public boolean equals(Object obj)
Tests this time period instance for equality with an arbitrary object. The object is considered equal if it is an instance of TimePeriod and it has the same start and end dates.
Parameters:
obj - the other object (null permitted).
Returns:
A boolean.

getEnd

public Date getEnd()
Returns the end date/time.
Specified by:
getEnd in interface TimePeriod
Returns:
The end date/time (never null).

getStart

public Date getStart()
Returns the start date/time.
Specified by:
getStart in interface TimePeriod
Returns:
The start date/time (never null).

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 - see:

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

Returns:
A hash code.