Search in sources :

Example 1 with DelegatedDateTimeField

use of org.joda.time.field.DelegatedDateTimeField in project joda-time by JodaOrg.

the class BuddhistChronology method assemble.

protected void assemble(Fields fields) {
    if (getParam() == null) {
        // force init as used below
        fields.eras = UnsupportedDurationField.getInstance(DurationFieldType.eras());
        // julian chrono removed zero, but we need to put it back
        DateTimeField field = fields.year;
        fields.year = new OffsetDateTimeField(new SkipUndoDateTimeField(this, field), BUDDHIST_OFFSET);
        // one era, so yearOfEra is the same
        field = fields.yearOfEra;
        fields.yearOfEra = new DelegatedDateTimeField(fields.year, fields.eras, DateTimeFieldType.yearOfEra());
        // julian chrono removed zero, but we need to put it back
        field = fields.weekyear;
        fields.weekyear = new OffsetDateTimeField(new SkipUndoDateTimeField(this, field), BUDDHIST_OFFSET);
        field = new OffsetDateTimeField(fields.yearOfEra, 99);
        fields.centuryOfEra = new DividedDateTimeField(field, fields.eras, DateTimeFieldType.centuryOfEra(), 100);
        fields.centuries = fields.centuryOfEra.getDurationField();
        field = new RemainderDateTimeField((DividedDateTimeField) fields.centuryOfEra);
        fields.yearOfCentury = new OffsetDateTimeField(field, DateTimeFieldType.yearOfCentury(), 1);
        field = new RemainderDateTimeField(fields.weekyear, fields.centuries, DateTimeFieldType.weekyearOfCentury(), 100);
        fields.weekyearOfCentury = new OffsetDateTimeField(field, DateTimeFieldType.weekyearOfCentury(), 1);
        fields.era = ERA_FIELD;
    }
}
Also used : OffsetDateTimeField(org.joda.time.field.OffsetDateTimeField) SkipUndoDateTimeField(org.joda.time.field.SkipUndoDateTimeField) RemainderDateTimeField(org.joda.time.field.RemainderDateTimeField) OffsetDateTimeField(org.joda.time.field.OffsetDateTimeField) SkipUndoDateTimeField(org.joda.time.field.SkipUndoDateTimeField) RemainderDateTimeField(org.joda.time.field.RemainderDateTimeField) DelegatedDateTimeField(org.joda.time.field.DelegatedDateTimeField) DateTimeField(org.joda.time.DateTimeField) DividedDateTimeField(org.joda.time.field.DividedDateTimeField) DelegatedDateTimeField(org.joda.time.field.DelegatedDateTimeField) DividedDateTimeField(org.joda.time.field.DividedDateTimeField)

Aggregations

DateTimeField (org.joda.time.DateTimeField)1 DelegatedDateTimeField (org.joda.time.field.DelegatedDateTimeField)1 DividedDateTimeField (org.joda.time.field.DividedDateTimeField)1 OffsetDateTimeField (org.joda.time.field.OffsetDateTimeField)1 RemainderDateTimeField (org.joda.time.field.RemainderDateTimeField)1 SkipUndoDateTimeField (org.joda.time.field.SkipUndoDateTimeField)1