org.jfree.data.time
Class Second

java.lang.Object
  extended byorg.jfree.data.time.RegularTimePeriod
      extended byorg.jfree.data.time.Second
All Implemented Interfaces:
java.lang.Comparable, org.jfree.date.MonthConstants, java.io.Serializable, TimePeriod

public class Second
extends RegularTimePeriod
implements java.io.Serializable

Represents a second in a particular day.

This class is immutable, which is a requirement for all RegularTimePeriod subclasses.

Author:
David Gilbert
See Also:
Serialized Form

Field Summary
static int FIRST_SECOND_IN_MINUTE
          Useful constant for the first second in a day.
static int LAST_SECOND_IN_MINUTE
          Useful constant for the last second in a day.
 
Fields inherited from class org.jfree.data.time.RegularTimePeriod
DEFAULT_TIME_ZONE, WORKING_CALENDAR
 
Fields inherited from interface org.jfree.date.MonthConstants
APRIL, AUGUST, DECEMBER, FEBRUARY, JANUARY, JULY, JUNE, MARCH, MAY, NOVEMBER, OCTOBER, SEPTEMBER
 
Constructor Summary
Second()
          Constructs a new Second, based on the system date/time.
Second(java.util.Date time)
          Constructs a second.
Second(java.util.Date time, java.util.TimeZone zone)
          Creates a new second based on the supplied time and time zone.
Second(int second, Minute minute)
          Constructs a new Second.
 
Method Summary
 int compareTo(java.lang.Object o1)
          Returns an integer indicating the order of this Second object relative to the specified object: negative == before, zero == same, positive == after.
 boolean equals(java.lang.Object object)
          Tests the equality of this object against an arbitrary Object.
 long getFirstMillisecond(java.util.Calendar calendar)
          Returns the first millisecond of the minute.
 long getLastMillisecond(java.util.Calendar calendar)
          Returns the last millisecond of the second.
 Minute getMinute()
          Returns the minute.
 int getSecond()
          Returns the second.
 long getSerialIndex()
          Returns a serial index number for the minute.
 RegularTimePeriod next()
          Returns the second following this one.
static Second parseSecond(java.lang.String s)
          Creates a Minute instance by parsing a string.
 RegularTimePeriod previous()
          Returns the second preceding this one.
 
Methods inherited from class org.jfree.data.time.RegularTimePeriod
getEnd, getFirstMillisecond, getFirstMillisecond, getLastMillisecond, getLastMillisecond, getMiddleMillisecond, getMiddleMillisecond, getMiddleMillisecond, getStart
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FIRST_SECOND_IN_MINUTE

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

See Also:
Constant Field Values

LAST_SECOND_IN_MINUTE

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

See Also:
Constant Field Values
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.

Second

public Second(java.util.Date time)
Constructs a second.

Parameters:
time - the time.

Second

public Second(java.util.Date time,
              java.util.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

getSecond

public int getSecond()
Returns the second.

Returns:
the second.

getMinute

public Minute getMinute()
Returns the minute.

Returns:
the minute.

previous

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

Specified by:
previous in class RegularTimePeriod
Returns:
the second preceding this one.

next

public RegularTimePeriod next()
Returns the second following this one.

Specified by:
next in class RegularTimePeriod
Returns:
the second following this one.

getSerialIndex

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

Specified by:
getSerialIndex in class RegularTimePeriod
Returns:
the serial index number.

getFirstMillisecond

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

Specified by:
getFirstMillisecond in class RegularTimePeriod
Parameters:
calendar - the calendar/timezone.
Returns:
the first millisecond.

getLastMillisecond

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

Specified by:
getLastMillisecond in class RegularTimePeriod
Parameters:
calendar - the calendar/timezone.
Returns:
the last millisecond.

equals

public boolean equals(java.lang.Object object)
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:
object - the object to compare.
Returns:
true if second and minute of this and the object are the same.

compareTo

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

Specified by:
compareTo in interface java.lang.Comparable
Parameters:
o1 - the object to compare.
Returns:
negative == before, zero == same, positive == after.

parseSecond

public static Second parseSecond(java.lang.String s)
Creates a Minute 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:
null if the string is not parseable, the Second otherwise.