private static long getTransitionTime(TimeZoneTransition tzt, boolean local, int NonExistingTimeOpt, int DuplicatedTimeOpt) { long time = tzt.getTime(); if (local) { time += getLocalDelta(tzt.getFrom().getRawOffset(), tzt.getFrom().getDSTSavings(), tzt.getTo().getRawOffset(), tzt.getTo().getDSTSavings(), NonExistingTimeOpt, DuplicatedTimeOpt); } return time; }
Date firstStart = tar.getFirstStart(tzt.getFrom().getRawOffset(), tzt.getFrom().getDSTSavings()); if (firstStart.getTime() > start) { t = times[idx]; if (timeType == DateTimeRule.STANDARD_TIME) { t -= tzt.getFrom().getRawOffset(); t -= tzt.getFrom().getDSTSavings(); Date firstStart = ar.getFirstStart(tzt.getFrom().getRawOffset(), tzt.getFrom().getDSTSavings()); if (firstStart.getTime() == tzt.getTime()) {
TimeZoneRule from = result.getFrom(); TimeZoneRule to = result.getTo(); if (from.getRawOffset() == to.getRawOffset()
String initialName = tr.getFrom().getName(); int initialRaw = tr.getFrom().getRawOffset(); int initialDst = tr.getFrom().getDSTSavings(); if (((tr.getFrom().getDSTSavings() == 0 && tr.getTo().getDSTSavings() != 0) || (tr.getFrom().getDSTSavings() != 0 && tr.getTo().getDSTSavings() == 0)) && date + MILLIS_PER_YEAR > nextTransitionTime) { annualRules = new AnnualTimeZoneRule[2]; + tr.getFrom().getRawOffset() + tr.getFrom().getDSTSavings(), null); int weekInMonth = Grego.getDayOfWeekInMonth(dtfields[0], dtfields[1], dtfields[2]); if (((tr.getFrom().getDSTSavings() == 0 && tr.getTo().getDSTSavings() != 0) || (tr.getFrom().getDSTSavings() != 0 && tr.getTo().getDSTSavings() == 0)) && nextTransitionTime + MILLIS_PER_YEAR > tr.getTime()) { + tr.getFrom().getRawOffset() + tr.getFrom().getDSTSavings(), dtfields); weekInMonth = Grego.getDayOfWeekInMonth(dtfields[0], dtfields[1], Date d = secondRule.getPreviousStart(date, tr.getFrom().getRawOffset(), tr.getFrom().getDSTSavings(), true); if (d != null && d.getTime() <= date && initialRaw == tr.getTo().getRawOffset() if ((tr.getFrom().getDSTSavings() == 0 && tr.getTo().getDSTSavings() != 0) || (tr.getFrom().getDSTSavings() != 0 && tr.getTo().getDSTSavings() == 0)) {
TimeZoneRule from = result.getFrom(); TimeZoneRule to = result.getTo(); if (from.getRawOffset() == to.getRawOffset()
if (tr1 != null && tr1.getTime() <= end && (tr1.getFrom().getRawOffset() + tr1.getFrom().getDSTSavings() == tr1.getTo().getRawOffset() + tr1.getTo().getDSTSavings()) && (tr1.getFrom().getDSTSavings() != 0 && tr1.getTo().getDSTSavings() != 0)) { tr1 = getNextTransition(tr1.getTime(), false); } else { if (tr2 != null && tr2.getTime() <= end && (tr2.getFrom().getRawOffset() + tr2.getFrom().getDSTSavings() == tr2.getTo().getRawOffset() + tr2.getTo().getDSTSavings()) && (tr2.getFrom().getDSTSavings() != 0 && tr2.getTo().getDSTSavings() != 0)) { tr2 = ((BasicTimeZone)tz).getNextTransition(tr2.getTime(), false); } else {
String name = tzt.getTo().getName(); boolean isDst = (tzt.getTo().getDSTSavings() != 0); int fromOffset = tzt.getFrom().getRawOffset() + tzt.getFrom().getDSTSavings(); int fromDSTSavings = tzt.getFrom().getDSTSavings(); int toOffset = tzt.getTo().getRawOffset() + tzt.getTo().getDSTSavings(); Grego.timeToFields(tzt.getTime() + fromOffset, dtfields);
if (before != null && (date - before.getTime() < DST_CHECK_RANGE) && before.getFrom().getDSTSavings() != 0) { useStandard = false; } else {
beforeSav = beforeTrs.getFrom().getDSTSavings(); if (beforeSav != 0) { break;