org.jfree.data.time

Class Second

public class Second extends RegularTimePeriod implements Serializable

Represents a second in a particular day. This class is immutable, which is a requirement for all RegularTimePeriod subclasses.
Field Summary
static intFIRST_SECOND_IN_MINUTE
Useful constant for the first second in a minute.
static intLAST_SECOND_IN_MINUTE
Useful constant for the last second in a minute.
Constructor Summary
Second()
Constructs a new Second, based on the system date/time.
Second(int second, Minute minute)
Constructs a new Second.
Second(int second, int minute, int hour, int day, int month, int year)
Creates a new second.
Second(Date time)
Constructs a second.
Second(Date time, TimeZone zone)
Creates a new second based on the supplied time and time zone.
Method Summary
intcompareTo(Object o1)
Returns an integer indicating the order of this Second object relative to the specified object: negative == before, zero == same, positive == after.
booleanequals(Object obj)
Tests the equality of this object against an arbitrary Object.
longgetFirstMillisecond()
Returns the first millisecond of the second.
longgetFirstMillisecond(Calendar calendar)
Returns the first millisecond of the minute.
longgetLastMillisecond()
Returns the last millisecond of the second.
longgetLastMillisecond(Calendar calendar)
Returns the last millisecond of the second.
MinutegetMinute()
Returns the minute.
intgetSecond()
Returns the second within the minute.
longgetSerialIndex()
Returns a serial index number for the minute.
inthashCode()
Returns a hash code for this object instance.
RegularTimePeriodnext()
Returns the second following this one.
static SecondparseSecond(String s)
Creates a new instance by parsing a string.
voidpeg(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).
RegularTimePeriodprevious()
Returns the second preceding this one.

Field Detail

FIRST_SECOND_IN_MINUTE

public static final int FIRST_SECOND_IN_MINUTE
Useful constant for the first second in a minute.

LAST_SECOND_IN_MINUTE

public static final int LAST_SECOND_IN_MINUTE
Useful constant for the last second in a minute.

Constructor Detail

Second

public Second()
Constructs a new Second, based on the system date/time.

Second

public Second(int second, Minute minute)
Constructs a new Second.

Parameters: second the second (0 to 24*60*60-1). minute the minute (null not permitted).

Second

public Second(int second, int minute, int hour, int day, int month, int year)
Creates a new second.

Parameters: second the second (0-59). minute the minute (0-59). hour the hour (0-23). day the day (1-31). month the month (1-12). year the year (1900-9999).

Second

public Second(Date time)
Constructs a second.

Parameters: time the time.

Second

public Second(Date time, TimeZone zone)
Creates a new second based on the supplied time and time zone.

Parameters: time the instant in time. zone the time zone.

Method Detail

compareTo

public int compareTo(Object o1)
Returns an integer indicating the order of this Second 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 obj)
Tests the equality of this object against an arbitrary Object.

This method will return true ONLY if the object is a Second object representing the same second as this instance.

Parameters: obj the object to compare (null permitted).

Returns: true if second and minute of this and the object are the same.

getFirstMillisecond

public long getFirstMillisecond()
Returns the first millisecond of the second. 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 method.

Returns: The first millisecond of the second.

See Also: getLastMillisecond

getFirstMillisecond

public long getFirstMillisecond(Calendar calendar)
Returns the first millisecond of the minute.

Parameters: calendar the calendar/timezone (null not permitted).

Returns: The first millisecond.

Throws: NullPointerException if calendar is null.

getLastMillisecond

public long getLastMillisecond()
Returns the last millisecond of the second. 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 method.

Returns: The last millisecond of the second.

See Also: getFirstMillisecond

getLastMillisecond

public long getLastMillisecond(Calendar calendar)
Returns the last millisecond of the second.

Parameters: calendar the calendar/timezone (null not permitted).

Returns: The last millisecond.

Throws: NullPointerException if calendar is null.

getMinute

public Minute getMinute()
Returns the minute.

Returns: The minute (never null).

getSecond

public int getSecond()
Returns the second within the minute.

Returns: The second (0 - 59).

getSerialIndex

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

Returns: The serial index number.

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 second following this one.

Returns: The second following this one.

parseSecond

public static Second parseSecond(String s)
Creates a new instance by parsing a string. The string is assumed to be in the format "YYYY-MM-DD HH:MM:SS", perhaps with leading or trailing whitespace.

Parameters: s the string to parse.

Returns: The second, or null if the string is not parseable.

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).

Parameters: calendar the calendar (null not permitted).

Since: 1.0.3

previous

public RegularTimePeriod previous()
Returns the second preceding this one.

Returns: The second preceding this one.