| java.lang.Object org.joda.time.Chronology org.joda.time.chrono.BaseChronology org.joda.time.chrono.AssembledChronology org.joda.time.chrono.BasicChronology org.joda.time.chrono.IslamicChronology
IslamicChronology | final public class IslamicChronology extends BasicChronology (Code) | | Implements the Islamic, or Hijri, calendar system using arithmetic rules.
This calendar is a lunar calendar with a shorter year than ISO.
Year 1 in the Islamic calendar began on July 16, 622 CE (Julian), thus
Islamic years do not begin at the same time as Julian years. This chronology
is not proleptic, as it does not allow dates before the first Islamic year.
There are two basic forms of the Islamic calendar, the tabular and the
observed. The observed form cannot easily be used by computers as it
relies on human observation of the new moon.
The tabular calendar, implemented here, is an arithmetical approximation
of the observed form that follows relatively simple rules.
The tabular form of the calendar defines 12 months of alternately
30 and 29 days. The last month is extended to 30 days in a leap year.
Leap years occur according to a 30 year cycle. There are four recognised
patterns of leap years in the 30 year cycle:
Years 2, 5, 7, 10, 13, 15, 18, 21, 24, 26 & 29 - 15-based, used by Microsoft
Years 2, 5, 7, 10, 13, 16, 18, 21, 24, 26 & 29 - 16-based, most commonly used
Years 2, 5, 8, 10, 13, 16, 19, 21, 24, 27 & 29 - Indian
Years 2, 5, 8, 11, 13, 16, 19, 21, 24, 27 & 30 - Habash al-Hasib
You can select which pattern to use via the factory methods, or use the
default (16-based).
This implementation defines a day as midnight to midnight exactly as per
the ISO chronology. This correct start of day is at sunset on the previous
day, however this cannot readily be modelled and has been ignored.
IslamicChronology is thread-safe and immutable.
See Also: Wikipedia author: Stephen Colebourne since: 1.2 |
Inner Class :public static class LeapYearPatternType implements Serializable | |
Field Summary | |
final public static int | AH Constant value for 'Anno Hegirae', equivalent
to the value returned for AD/CE. | final public static LeapYearPatternType | LEAP_YEAR_15_BASED Leap year 15-based pattern. | final public static LeapYearPatternType | LEAP_YEAR_16_BASED Leap year 16-based pattern. | final public static LeapYearPatternType | LEAP_YEAR_HABASH_AL_HASIB Leap year Habash al-Hasib pattern. | final public static LeapYearPatternType | LEAP_YEAR_INDIAN Leap year Indian pattern. |
AH | final public static int AH(Code) | | Constant value for 'Anno Hegirae', equivalent
to the value returned for AD/CE.
|
LEAP_YEAR_15_BASED | final public static LeapYearPatternType LEAP_YEAR_15_BASED(Code) | | Leap year 15-based pattern.
|
LEAP_YEAR_16_BASED | final public static LeapYearPatternType LEAP_YEAR_16_BASED(Code) | | Leap year 16-based pattern.
|
LEAP_YEAR_HABASH_AL_HASIB | final public static LeapYearPatternType LEAP_YEAR_HABASH_AL_HASIB(Code) | | Leap year Habash al-Hasib pattern.
|
LEAP_YEAR_INDIAN | final public static LeapYearPatternType LEAP_YEAR_INDIAN(Code) | | Leap year Indian pattern.
|
IslamicChronology | IslamicChronology(Chronology base, Object param, LeapYearPatternType leapYears)(Code) | | Restricted constructor.
|
assemble | protected void assemble(Fields fields)(Code) | | |
calculateFirstDayOfYearMillis | long calculateFirstDayOfYearMillis(int year)(Code) | | |
getApproxMillisAtEpochDividedByTwo | long getApproxMillisAtEpochDividedByTwo()(Code) | | |
getAverageMillisPerMonth | long getAverageMillisPerMonth()(Code) | | |
getAverageMillisPerYear | long getAverageMillisPerYear()(Code) | | |
getAverageMillisPerYearDividedByTwo | long getAverageMillisPerYearDividedByTwo()(Code) | | |
getDayOfMonth | int getDayOfMonth(long millis)(Code) | | |
getDaysInMonthMax | int getDaysInMonthMax()(Code) | | |
getDaysInMonthMax | int getDaysInMonthMax(int month)(Code) | | |
getDaysInYear | int getDaysInYear(int year)(Code) | | |
getDaysInYearMax | int getDaysInYearMax()(Code) | | |
getDaysInYearMonth | int getDaysInYearMonth(int year, int month)(Code) | | |
getInstance | public static IslamicChronology getInstance()(Code) | | Gets an instance of the IslamicChronology in the default time zone.
a chronology in the default time zone |
getInstance | public static IslamicChronology getInstance(DateTimeZone zone)(Code) | | Gets an instance of the IslamicChronology in the given time zone.
Parameters: zone - the time zone to get the chronology in, null is default a chronology in the specified time zone |
getInstance | public static IslamicChronology getInstance(DateTimeZone zone, LeapYearPatternType leapYears)(Code) | | Gets an instance of the IslamicChronology in the given time zone.
Parameters: zone - the time zone to get the chronology in, null is default Parameters: leapYears - the type defining the leap year pattern a chronology in the specified time zone |
getInstanceUTC | public static IslamicChronology getInstanceUTC()(Code) | | Gets an instance of the IslamicChronology.
The time zone of the returned instance is UTC.
a singleton UTC instance of the chronology |
getLeapYearPatternType | public LeapYearPatternType getLeapYearPatternType()(Code) | | Gets the leap year pattern type.
the pattern type |
getMaxYear | int getMaxYear()(Code) | | |
getMinYear | int getMinYear()(Code) | | |
getMonthOfYear | int getMonthOfYear(long millis, int year)(Code) | | |
getTotalMillisByYearMonth | long getTotalMillisByYearMonth(int year, int month)(Code) | | |
getYear | int getYear(long instant)(Code) | | |
getYearDifference | long getYearDifference(long minuendInstant, long subtrahendInstant)(Code) | | |
isLeapYear | boolean isLeapYear(int year)(Code) | | |
setYear | long setYear(long instant, int year)(Code) | | |
withUTC | public Chronology withUTC()(Code) | | Gets the Chronology in the UTC time zone.
the chronology in UTC |
withZone | public Chronology withZone(DateTimeZone zone)(Code) | | Gets the Chronology in a specific time zone.
Parameters: zone - the zone to get the chronology in, null is default the chronology |
Methods inherited from org.joda.time.chrono.BasicChronology | protected void assemble(Fields fields)(Code)(Java Doc) abstract long calculateFirstDayOfYearMillis(int year)(Code)(Java Doc) abstract long getApproxMillisAtEpochDividedByTwo()(Code)(Java Doc) abstract long getAverageMillisPerMonth()(Code)(Java Doc) abstract long getAverageMillisPerYear()(Code)(Java Doc) abstract long getAverageMillisPerYearDividedByTwo()(Code)(Java Doc) long getDateMidnightMillis(int year, int monthOfYear, int dayOfMonth)(Code)(Java Doc) public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int millisOfDay) throws IllegalArgumentException(Code)(Java Doc) public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws IllegalArgumentException(Code)(Java Doc) int getDayOfMonth(long millis)(Code)(Java Doc) int getDayOfMonth(long millis, int year)(Code)(Java Doc) int getDayOfMonth(long millis, int year, int month)(Code)(Java Doc) int getDayOfWeek(long instant)(Code)(Java Doc) int getDayOfYear(long instant)(Code)(Java Doc) int getDayOfYear(long instant, int year)(Code)(Java Doc) int getDaysInMonthMax()(Code)(Java Doc) int getDaysInMonthMax(long instant)(Code)(Java Doc) abstract int getDaysInMonthMax(int month)(Code)(Java Doc) int getDaysInMonthMaxForSet(long instant, int value)(Code)(Java Doc) int getDaysInYear(int year)(Code)(Java Doc) int getDaysInYearMax()(Code)(Java Doc) abstract int getDaysInYearMonth(int year, int month)(Code)(Java Doc) long getFirstWeekOfYearMillis(int year)(Code)(Java Doc) int getMaxMonth(int year)(Code)(Java Doc) int getMaxMonth()(Code)(Java Doc) abstract int getMaxYear()(Code)(Java Doc) int getMillisOfDay(long instant)(Code)(Java Doc) abstract int getMinYear()(Code)(Java Doc) public int getMinimumDaysInFirstWeek()(Code)(Java Doc) int getMonthOfYear(long millis)(Code)(Java Doc) abstract int getMonthOfYear(long millis, int year)(Code)(Java Doc) abstract long getTotalMillisByYearMonth(int year, int month)(Code)(Java Doc) int getWeekOfWeekyear(long instant)(Code)(Java Doc) int getWeekOfWeekyear(long instant, int year)(Code)(Java Doc) int getWeeksInYear(int year)(Code)(Java Doc) int getWeekyear(long instant)(Code)(Java Doc) int getYear(long instant)(Code)(Java Doc) abstract long getYearDifference(long minuendInstant, long subtrahendInstant)(Code)(Java Doc) long getYearMillis(int year)(Code)(Java Doc) long getYearMonthDayMillis(int year, int month, int dayOfMonth)(Code)(Java Doc) long getYearMonthMillis(int year, int month)(Code)(Java Doc) public DateTimeZone getZone()(Code)(Java Doc) abstract boolean isLeapYear(int year)(Code)(Java Doc) abstract long setYear(long instant, int year)(Code)(Java Doc) public String toString()(Code)(Java Doc)
|
Methods inherited from org.joda.time.chrono.AssembledChronology | abstract protected void assemble(Fields fields)(Code)(Java Doc) final public DurationField centuries()(Code)(Java Doc) final public DateTimeField centuryOfEra()(Code)(Java Doc) final public DateTimeField clockhourOfDay()(Code)(Java Doc) final public DateTimeField clockhourOfHalfday()(Code)(Java Doc) final public DateTimeField dayOfMonth()(Code)(Java Doc) final public DateTimeField dayOfWeek()(Code)(Java Doc) final public DateTimeField dayOfYear()(Code)(Java Doc) final public DurationField days()(Code)(Java Doc) final public DateTimeField era()(Code)(Java Doc) final public DurationField eras()(Code)(Java Doc) final protected Chronology getBase()(Code)(Java Doc) public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int millisOfDay) throws IllegalArgumentException(Code)(Java Doc) public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws IllegalArgumentException(Code)(Java Doc) public long getDateTimeMillis(long instant, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws IllegalArgumentException(Code)(Java Doc) final protected Object getParam()(Code)(Java Doc) public DateTimeZone getZone()(Code)(Java Doc) final public DateTimeField halfdayOfDay()(Code)(Java Doc) final public DurationField halfdays()(Code)(Java Doc) final public DateTimeField hourOfDay()(Code)(Java Doc) final public DateTimeField hourOfHalfday()(Code)(Java Doc) final public DurationField hours()(Code)(Java Doc) final public DurationField millis()(Code)(Java Doc) final public DateTimeField millisOfDay()(Code)(Java Doc) final public DateTimeField millisOfSecond()(Code)(Java Doc) final public DateTimeField minuteOfDay()(Code)(Java Doc) final public DateTimeField minuteOfHour()(Code)(Java Doc) final public DurationField minutes()(Code)(Java Doc) final public DateTimeField monthOfYear()(Code)(Java Doc) final public DurationField months()(Code)(Java Doc) final public DateTimeField secondOfDay()(Code)(Java Doc) final public DateTimeField secondOfMinute()(Code)(Java Doc) final public DurationField seconds()(Code)(Java Doc) final public DateTimeField weekOfWeekyear()(Code)(Java Doc) final public DurationField weeks()(Code)(Java Doc) final public DateTimeField weekyear()(Code)(Java Doc) final public DateTimeField weekyearOfCentury()(Code)(Java Doc) final public DurationField weekyears()(Code)(Java Doc) final public DateTimeField year()(Code)(Java Doc) final public DateTimeField yearOfCentury()(Code)(Java Doc) final public DateTimeField yearOfEra()(Code)(Java Doc) final public DurationField years()(Code)(Java Doc)
|
Methods inherited from org.joda.time.chrono.BaseChronology | public long add(ReadablePeriod period, long instant, int scalar)(Code)(Java Doc) public long add(long instant, long duration, int scalar)(Code)(Java Doc) public DurationField centuries()(Code)(Java Doc) public DateTimeField centuryOfEra()(Code)(Java Doc) public DateTimeField clockhourOfDay()(Code)(Java Doc) public DateTimeField clockhourOfHalfday()(Code)(Java Doc) public DateTimeField dayOfMonth()(Code)(Java Doc) public DateTimeField dayOfWeek()(Code)(Java Doc) public DateTimeField dayOfYear()(Code)(Java Doc) public DurationField days()(Code)(Java Doc) public DateTimeField era()(Code)(Java Doc) public DurationField eras()(Code)(Java Doc) public int[] get(ReadablePartial partial, long instant)(Code)(Java Doc) public int[] get(ReadablePeriod period, long startInstant, long endInstant)(Code)(Java Doc) public int[] get(ReadablePeriod period, long duration)(Code)(Java Doc) public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int millisOfDay) throws IllegalArgumentException(Code)(Java Doc) public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws IllegalArgumentException(Code)(Java Doc) public long getDateTimeMillis(long instant, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond) throws IllegalArgumentException(Code)(Java Doc) abstract public DateTimeZone getZone()(Code)(Java Doc) public DateTimeField halfdayOfDay()(Code)(Java Doc) public DurationField halfdays()(Code)(Java Doc) public DateTimeField hourOfDay()(Code)(Java Doc) public DateTimeField hourOfHalfday()(Code)(Java Doc) public DurationField hours()(Code)(Java Doc) public DurationField millis()(Code)(Java Doc) public DateTimeField millisOfDay()(Code)(Java Doc) public DateTimeField millisOfSecond()(Code)(Java Doc) public DateTimeField minuteOfDay()(Code)(Java Doc) public DateTimeField minuteOfHour()(Code)(Java Doc) public DurationField minutes()(Code)(Java Doc) public DateTimeField monthOfYear()(Code)(Java Doc) public DurationField months()(Code)(Java Doc) public DateTimeField secondOfDay()(Code)(Java Doc) public DateTimeField secondOfMinute()(Code)(Java Doc) public DurationField seconds()(Code)(Java Doc) public long set(ReadablePartial partial, long instant)(Code)(Java Doc) abstract public String toString()(Code)(Java Doc) public void validate(ReadablePartial partial, int[] values)(Code)(Java Doc) public DateTimeField weekOfWeekyear()(Code)(Java Doc) public DurationField weeks()(Code)(Java Doc) public DateTimeField weekyear()(Code)(Java Doc) public DateTimeField weekyearOfCentury()(Code)(Java Doc) public DurationField weekyears()(Code)(Java Doc) abstract public Chronology withUTC()(Code)(Java Doc) abstract public Chronology withZone(DateTimeZone zone)(Code)(Java Doc) public DateTimeField year()(Code)(Java Doc) public DateTimeField yearOfCentury()(Code)(Java Doc) public DateTimeField yearOfEra()(Code)(Java Doc) public DurationField years()(Code)(Java Doc)
|
Methods inherited from org.joda.time.Chronology | abstract public long add(ReadablePeriod period, long instant, int scalar)(Code)(Java Doc) abstract public long add(long instant, long duration, int scalar)(Code)(Java Doc) abstract public DurationField centuries()(Code)(Java Doc) abstract public DateTimeField centuryOfEra()(Code)(Java Doc) abstract public DateTimeField clockhourOfDay()(Code)(Java Doc) abstract public DateTimeField clockhourOfHalfday()(Code)(Java Doc) abstract public DateTimeField dayOfMonth()(Code)(Java Doc) abstract public DateTimeField dayOfWeek()(Code)(Java Doc) abstract public DateTimeField dayOfYear()(Code)(Java Doc) abstract public DurationField days()(Code)(Java Doc) abstract public DateTimeField era()(Code)(Java Doc) abstract public DurationField eras()(Code)(Java Doc) abstract public int[] get(ReadablePartial partial, long instant)(Code)(Java Doc) abstract public int[] get(ReadablePeriod period, long startInstant, long endInstant)(Code)(Java Doc) abstract public int[] get(ReadablePeriod period, long duration)(Code)(Java Doc) public static Chronology getBuddhist()(Code)(Java Doc) public static Chronology getBuddhist(DateTimeZone zone)(Code)(Java Doc) public static Chronology getBuddhistUTC()(Code)(Java Doc) public static Chronology getCoptic()(Code)(Java Doc) public static Chronology getCoptic(DateTimeZone zone)(Code)(Java Doc) public static Chronology getCopticUTC()(Code)(Java Doc) abstract public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int millisOfDay)(Code)(Java Doc) abstract public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond)(Code)(Java Doc) abstract public long getDateTimeMillis(long instant, int hourOfDay, int minuteOfHour, int secondOfMinute, int millisOfSecond)(Code)(Java Doc) public static Chronology getGJ()(Code)(Java Doc) public static Chronology getGJ(DateTimeZone zone)(Code)(Java Doc) public static Chronology getGJUTC()(Code)(Java Doc) public static Chronology getGregorian()(Code)(Java Doc) public static Chronology getGregorian(DateTimeZone zone)(Code)(Java Doc) public static Chronology getGregorianUTC()(Code)(Java Doc) public static Chronology getISO()(Code)(Java Doc) public static Chronology getISO(DateTimeZone zone)(Code)(Java Doc) public static Chronology getISOUTC()(Code)(Java Doc) public static Chronology getJulian()(Code)(Java Doc) public static Chronology getJulian(DateTimeZone zone)(Code)(Java Doc) public static Chronology getJulianUTC()(Code)(Java Doc) abstract public DateTimeZone getZone()(Code)(Java Doc) abstract public DateTimeField halfdayOfDay()(Code)(Java Doc) abstract public DurationField halfdays()(Code)(Java Doc) abstract public DateTimeField hourOfDay()(Code)(Java Doc) abstract public DateTimeField hourOfHalfday()(Code)(Java Doc) abstract public DurationField hours()(Code)(Java Doc) abstract public DurationField millis()(Code)(Java Doc) abstract public DateTimeField millisOfDay()(Code)(Java Doc) abstract public DateTimeField millisOfSecond()(Code)(Java Doc) abstract public DateTimeField minuteOfDay()(Code)(Java Doc) abstract public DateTimeField minuteOfHour()(Code)(Java Doc) abstract public DurationField minutes()(Code)(Java Doc) abstract public DateTimeField monthOfYear()(Code)(Java Doc) abstract public DurationField months()(Code)(Java Doc) abstract public DateTimeField secondOfDay()(Code)(Java Doc) abstract public DateTimeField secondOfMinute()(Code)(Java Doc) abstract public DurationField seconds()(Code)(Java Doc) abstract public long set(ReadablePartial partial, long instant)(Code)(Java Doc) abstract public String toString()(Code)(Java Doc) abstract public void validate(ReadablePartial partial, int[] values)(Code)(Java Doc) abstract public DateTimeField weekOfWeekyear()(Code)(Java Doc) abstract public DurationField weeks()(Code)(Java Doc) abstract public DateTimeField weekyear()(Code)(Java Doc) abstract public DateTimeField weekyearOfCentury()(Code)(Java Doc) abstract public DurationField weekyears()(Code)(Java Doc) abstract public Chronology withUTC()(Code)(Java Doc) abstract public Chronology withZone(DateTimeZone zone)(Code)(Java Doc) abstract public DateTimeField year()(Code)(Java Doc) abstract public DateTimeField yearOfCentury()(Code)(Java Doc) abstract public DateTimeField yearOfEra()(Code)(Java Doc) abstract public DurationField years()(Code)(Java Doc)
|
|
|