< prev index next >

src/java.base/share/classes/java/time/chrono/ThaiBuddhistChronology.java

Print this page




 325     @Override
 326     public boolean isLeapYear(long prolepticYear) {
 327         return IsoChronology.INSTANCE.isLeapYear(prolepticYear - YEARS_DIFFERENCE);
 328     }
 329 
 330     @Override
 331     public int prolepticYear(Era era, int yearOfEra) {
 332         if (era instanceof ThaiBuddhistEra == false) {
 333             throw new ClassCastException("Era must be BuddhistEra");
 334         }
 335         return (era == ThaiBuddhistEra.BE ? yearOfEra : 1 - yearOfEra);
 336     }
 337 
 338     @Override
 339     public ThaiBuddhistEra eraOf(int eraValue) {
 340         return ThaiBuddhistEra.of(eraValue);
 341     }
 342 
 343     @Override
 344     public List<Era> eras() {
 345         return Arrays.<Era>asList(ThaiBuddhistEra.values());
 346     }
 347 
 348     //-----------------------------------------------------------------------
 349     @Override
 350     public ValueRange range(ChronoField field) {
 351         switch (field) {
 352             case PROLEPTIC_MONTH: {
 353                 ValueRange range = PROLEPTIC_MONTH.range();
 354                 return ValueRange.of(range.getMinimum() + YEARS_DIFFERENCE * 12L, range.getMaximum() + YEARS_DIFFERENCE * 12L);
 355             }
 356             case YEAR_OF_ERA: {
 357                 ValueRange range = YEAR.range();
 358                 return ValueRange.of(1, -(range.getMinimum() + YEARS_DIFFERENCE) + 1, range.getMaximum() + YEARS_DIFFERENCE);
 359             }
 360             case YEAR: {
 361                 ValueRange range = YEAR.range();
 362                 return ValueRange.of(range.getMinimum() + YEARS_DIFFERENCE, range.getMaximum() + YEARS_DIFFERENCE);
 363             }
 364         }
 365         return field.range();




 325     @Override
 326     public boolean isLeapYear(long prolepticYear) {
 327         return IsoChronology.INSTANCE.isLeapYear(prolepticYear - YEARS_DIFFERENCE);
 328     }
 329 
 330     @Override
 331     public int prolepticYear(Era era, int yearOfEra) {
 332         if (era instanceof ThaiBuddhistEra == false) {
 333             throw new ClassCastException("Era must be BuddhistEra");
 334         }
 335         return (era == ThaiBuddhistEra.BE ? yearOfEra : 1 - yearOfEra);
 336     }
 337 
 338     @Override
 339     public ThaiBuddhistEra eraOf(int eraValue) {
 340         return ThaiBuddhistEra.of(eraValue);
 341     }
 342 
 343     @Override
 344     public List<Era> eras() {
 345         return List.of(ThaiBuddhistEra.values());
 346     }
 347 
 348     //-----------------------------------------------------------------------
 349     @Override
 350     public ValueRange range(ChronoField field) {
 351         switch (field) {
 352             case PROLEPTIC_MONTH: {
 353                 ValueRange range = PROLEPTIC_MONTH.range();
 354                 return ValueRange.of(range.getMinimum() + YEARS_DIFFERENCE * 12L, range.getMaximum() + YEARS_DIFFERENCE * 12L);
 355             }
 356             case YEAR_OF_ERA: {
 357                 ValueRange range = YEAR.range();
 358                 return ValueRange.of(1, -(range.getMinimum() + YEARS_DIFFERENCE) + 1, range.getMaximum() + YEARS_DIFFERENCE);
 359             }
 360             case YEAR: {
 361                 ValueRange range = YEAR.range();
 362                 return ValueRange.of(range.getMinimum() + YEARS_DIFFERENCE, range.getMaximum() + YEARS_DIFFERENCE);
 363             }
 364         }
 365         return field.range();


< prev index next >