org.joda.time.chrono
Class JulianChronology

java.lang.Object
  extended byorg.joda.time.Chronology
      extended byorg.joda.time.chrono.BaseChronology
          extended byorg.joda.time.chrono.AssembledChronology
              extended byorg.joda.time.chrono.BasicChronology
                  extended byorg.joda.time.chrono.BasicGJChronology
                      extended byorg.joda.time.chrono.JulianChronology
All Implemented Interfaces:
Serializable

public final class JulianChronology
extends org.joda.time.chrono.BasicGJChronology

Implements a pure proleptic Julian calendar system, which defines every fourth year as leap. This implementation follows the leap year rule strictly, even for dates before 8 CE, where leap years were actually irregular. In the Julian calendar, year zero does not exist: 1 BCE is followed by 1 CE.

Although the Julian calendar did not exist before 45 BCE, this chronology assumes it did, thus it is proleptic. This implementation also fixes the start of the year at January 1.

JulianChronology is thread-safe and immutable.

Since:
1.0
Author:
Guy Allard, Brian S O'Neill, Stephen Colebourne
See Also:
Wikipedia, GregorianChronology, GJChronology, Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.joda.time.chrono.AssembledChronology
AssembledChronology.Fields
 
Method Summary
 boolean equals(Object obj)
          Checks if this chronology instance equals another.
 long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int millisOfDay)
          Returns a datetime millisecond instant, formed from the given year, month, day, and millisecond values.
 long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond)
          Returns a datetime millisecond instant, formed from the given year, month, day, hour, minute, second, and millisecond values.
static JulianChronology getInstance()
          Gets an instance of the JulianChronology in the default time zone.
static JulianChronology getInstance(DateTimeZone zone)
          Gets an instance of the JulianChronology in the given time zone.
static JulianChronology getInstance(DateTimeZone zone, int minDaysInFirstWeek)
          Gets an instance of the JulianChronology in the given time zone.
static JulianChronology getInstanceUTC()
          Gets an instance of the JulianChronology.
 int getMinimumDaysInFirstWeek()
           
 DateTimeZone getZone()
          Returns the DateTimeZone that this Chronology operates in, or null if unspecified.
 int hashCode()
          A suitable hash code for the chronology.
 String toString()
          Gets a debugging toString.
 Chronology withUTC()
          Gets the Chronology in the UTC time zone.
 Chronology withZone(DateTimeZone zone)
          Gets the Chronology in a specific time zone.
 
Methods inherited from class org.joda.time.chrono.AssembledChronology
centuries, centuryOfEra, clockhourOfDay, clockhourOfHalfday, dayOfMonth, dayOfWeek, dayOfYear, days, era, eras, getDateTimeMillis, halfdayOfDay, halfdays, hourOfDay, hourOfHalfday, hours, millis, millisOfDay, millisOfSecond, minuteOfDay, minuteOfHour, minutes, monthOfYear, months, secondOfDay, secondOfMinute, seconds, weekOfWeekyear, weeks, weekyear, weekyearOfCentury, weekyears, year, yearOfCentury, yearOfEra, years
 
Methods inherited from class org.joda.time.chrono.BaseChronology
add, add, get, get, get, set, validate
 
Methods inherited from class org.joda.time.Chronology
getBuddhist, getBuddhist, getBuddhistUTC, getCoptic, getCoptic, getCopticUTC, getGJ, getGJ, getGJUTC, getGregorian, getGregorian, getGregorianUTC, getISO, getISO, getISOUTC, getJulian, getJulian, getJulianUTC
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

getInstanceUTC

public static JulianChronology getInstanceUTC()
Gets an instance of the JulianChronology. The time zone of the returned instance is UTC.

Returns:
a singleton UTC instance of the chronology

getInstance

public static JulianChronology getInstance()
Gets an instance of the JulianChronology in the default time zone.

Returns:
a chronology in the default time zone

getInstance

public static JulianChronology getInstance(DateTimeZone zone)
Gets an instance of the JulianChronology in the given time zone.

Parameters:
zone - the time zone to get the chronology in, null is default
Returns:
a chronology in the specified time zone

getInstance

public static JulianChronology getInstance(DateTimeZone zone,
                                           int minDaysInFirstWeek)
Gets an instance of the JulianChronology in the given time zone.

Parameters:
zone - the time zone to get the chronology in, null is default
minDaysInFirstWeek - minimum number of days in first week of the year; default is 4
Returns:
a chronology in the specified time zone

withUTC

public Chronology withUTC()
Gets the Chronology in the UTC time zone.

Specified by:
withUTC in class BaseChronology
Returns:
the chronology in UTC

withZone

public Chronology withZone(DateTimeZone zone)
Gets the Chronology in a specific time zone.

Specified by:
withZone in class BaseChronology
Parameters:
zone - the zone to get the chronology in, null is default
Returns:
the chronology
See Also:
ZonedChronology

getZone

public DateTimeZone getZone()
Description copied from class: BaseChronology
Returns the DateTimeZone that this Chronology operates in, or null if unspecified.

Overrides:
getZone in class AssembledChronology

getDateTimeMillis

public long getDateTimeMillis(int year,
                              int monthOfYear,
                              int dayOfMonth,
                              int millisOfDay)
                       throws IllegalArgumentException
Description copied from class: BaseChronology
Returns a datetime millisecond instant, formed from the given year, month, day, and millisecond values. The set of given values must refer to a valid datetime, or else an IllegalArgumentException is thrown.

The default implementation calls upon separate DateTimeFields to determine the result. Subclasses are encouraged to provide a more efficient implementation.

Overrides:
getDateTimeMillis in class AssembledChronology
Throws:
IllegalArgumentException

getDateTimeMillis

public long getDateTimeMillis(int year,
                              int monthOfYear,
                              int dayOfMonth,
                              int hourOfDay,
                              int minuteOfHour,
                              int secondOfMinute,
                              int millisOfSecond)
                       throws IllegalArgumentException
Description copied from class: BaseChronology
Returns a datetime millisecond instant, formed from the given year, month, day, hour, minute, second, and millisecond values. The set of given values must refer to a valid datetime, or else an IllegalArgumentException is thrown.

The default implementation calls upon separate DateTimeFields to determine the result. Subclasses are encouraged to provide a more efficient implementation.

Overrides:
getDateTimeMillis in class AssembledChronology
Throws:
IllegalArgumentException

getMinimumDaysInFirstWeek

public int getMinimumDaysInFirstWeek()

equals

public boolean equals(Object obj)
Checks if this chronology instance equals another.

Parameters:
obj - the object to compare to
Returns:
true if equal
Since:
1.6

hashCode

public int hashCode()
A suitable hash code for the chronology.

Returns:
the hash code
Since:
1.6

toString

public String toString()
Gets a debugging toString.

Specified by:
toString in class BaseChronology
Returns:
a debugging string


Copyright © 2002-2008 Joda.org. All Rights Reserved.