@Override public Temporal resolve(Time t, int flags) { if (t == null) return this; // No resolving to be done? if (base instanceof PartialTime) { PartialTime pt = (PartialTime) base.resolve(t,flags); List<Temporal> list = pt.toList(); if (list != null && list.size() >= n) { return list.get(n-1); } } else if (base instanceof Duration) { Duration d = ((Duration) base).multiplyBy(n-1); Time temp = t.getRange().begin(); return temp.offset(d,0).reduceGranularityTo(d.getDuration()); } return this; }
public Temporal createTemporal(int n) { return duration.multiplyBy(n); } }
public Duration multiplyBy(int m) { Duration min2 = (minDuration != null) ? minDuration.multiplyBy(m) : null; Duration max2 = (maxDuration != null) ? maxDuration.multiplyBy(m) : null; return new DurationRange(this, min2, max2); }
public Temporal apply(Duration d, int scale) { if (d == null) return null; if (scale == 1) return d; return d.multiplyBy(scale); }
public Range add(Duration d, int flags) { Duration d2 = duration.add(d); Time b2 = begin; Time e2 = end; if ((flags & RANGE_EXPAND_FIX_BEGIN) == 0) { b2 = (end != null) ? end.offset(d2.multiplyBy(-1),0) : null; } else if ((flags & RANGE_EXPAND_FIX_END) == 0) { e2 = (begin != null) ? begin.offset(d2,0) : null; } return new Range(this, b2, e2, d2); }
public Temporal apply(Duration d, int scale) { if (d == null) return null; if (scale == 1) return d; return d.multiplyBy(scale); }
public Range add(Duration d, int flags) { Duration d2 = duration.add(d); Time b2 = begin; Time e2 = end; if ((flags & RANGE_EXPAND_FIX_BEGIN) == 0) { b2 = (end != null) ? end.offset(d2.multiplyBy(-1)) : null; } else if ((flags & RANGE_EXPAND_FIX_END) == 0) { e2 = (begin != null) ? begin.offset(d2) : null; } return new Range(this, b2, e2, d2); }
public Temporal apply(Duration d, int scale) { if (d == null) return null; return d.multiplyBy(scale); }
public Range add(Duration d, int flags) { Duration d2 = duration.add(d); Time b2 = begin; Time e2 = end; if ((flags & RANGE_EXPAND_FIX_BEGIN) == 0) { b2 = (end != null) ? end.offset(d2.multiplyBy(-1),0) : null; } else if ((flags & RANGE_EXPAND_FIX_END) == 0) { e2 = (begin != null) ? begin.offset(d2,0) : null; } return new Range(this, b2, e2, d2); }
public Duration multiplyBy(int m) { Duration min2 = (minDuration != null) ? minDuration.multiplyBy(m) : null; Duration max2 = (maxDuration != null) ? maxDuration.multiplyBy(m) : null; return new DurationRange(this, min2, max2); }
@Override public Duration multiplyBy(int m) { Duration min2 = (minDuration != null) ? minDuration.multiplyBy(m) : null; Duration max2 = (maxDuration != null) ? maxDuration.multiplyBy(m) : null; return new DurationRange(this, min2, max2); }
public Range subtract(Duration d, int flags) { return add(d.multiplyBy(-1), RANGE_EXPAND_FIX_BEGIN); }
public PeriodicTemporalSet multiplyDurationBy(int scale) { return new PeriodicTemporalSet(this, this.base, periodicity.multiplyBy(scale), this.occursIn, this.quant, this.freq); }
public Duration subtract(Duration d) { return add(d.multiplyBy(-1)); }
public Time subtract(Duration offset) { return add(offset.multiplyBy(-1)); }
public Temporal prev() { Duration per = getPeriod(); if (per != null) { if (this instanceof Duration) { return new RelativeTime(new RelativeTime(TemporalOp.THIS, this, DUR_RESOLVE_FROM_AS_REF), TemporalOp.OFFSET, per.multiplyBy(-1)); } else { // return new RelativeTime(new RelativeTime(TemporalOp.THIS, this), // TemporalOp.OFFSET, per.multiplyBy(-1)); return TemporalOp.OFFSET.apply(this, per.multiplyBy(-1)); } } return null; }
public Temporal createTemporal(int n) { return duration.multiplyBy(n); } }
public Range add(Duration d, int flags) { Duration d2 = duration.add(d); Time b2 = begin; Time e2 = end; if ((flags & RANGE_EXPAND_FIX_BEGIN) == 0) { b2 = (end != null) ? end.offset(d2.multiplyBy(-1),0) : null; } else if ((flags & RANGE_EXPAND_FIX_END) == 0) { e2 = (begin != null) ? begin.offset(d2,0) : null; } return new Range(this, b2, e2, d2); }
public Temporal apply(Duration d, int scale) { if (d == null) return null; if (scale == 1) return d; return d.multiplyBy(scale); }
@Override public Duration multiplyBy(int m) { Duration min2 = (minDuration != null) ? minDuration.multiplyBy(m) : null; Duration max2 = (maxDuration != null) ? maxDuration.multiplyBy(m) : null; return new DurationRange(this, min2, max2); }