private static final Duration pertubateTime(Duration duration) { Duration newDuration = duration.dividedBy((int)(2.0 / (1 + (random.nextDouble() * 2 - 1.0) * PERTURBATION_PERCENTAGE))); assert !duration.isZero() : duration; return newDuration; }
private static Duration pertubTime(Duration duration) { Duration newDuration = duration.dividedBy((int)(2.0 / (1 + (random.nextDouble() * 2 - 1.0) * PERTURBATION_PERCENTAGE))); assert !duration.isZero() : duration; return newDuration; }
/** * Builds a new recurring policy. * * @return the new instance */ public RecurringPolicy build() { Duration min = this.min == null ? interval.dividedBy(10) : this.min; Duration max = this.max == null ? interval.multipliedBy(5) : this.max; BiFunction<Duration, Integer, Duration> lengthenFunction = this.lengthenFunction == null ? DEFAULT_LENGTHEN : this.lengthenFunction; BiFunction<Duration, Integer, Duration> shortenFunction = this.shortenFunction == null ? DEFAULT_SHORTEN : this.shortenFunction; return new ScheduledPollingStrategy.AdaptiveRecurringPolicy(min, interval, max, shortenFunction, lengthenFunction); }
try { jitterOffset = nextBackoff.multipliedBy((long) (100 * jitterFactor)) .dividedBy(100) .toMillis();
this.idStore = idStore; this.times = config.get(TIMESTAMP_PROVIDER); this.waitGracePeriod = idApplicationWaitMS.dividedBy(10); Preconditions.checkNotNull(times);
this.idStore = idStore; this.times = config.get(TIMESTAMP_PROVIDER); this.waitGracePeriod = idApplicationWaitMS.dividedBy(10); Preconditions.checkNotNull(times);
/** * Supports the division operator; equivalent to calling the {@link Duration#dividedBy(long)} method. * * @param self a Duration * @param scalar the value to divide by * @return a Duration * @since 2.5.0 */ public static Duration div(final Duration self, long scalar) { return self.dividedBy(scalar); }
private static final Duration pertubateTime(Duration duration) { Duration newDuration = duration.dividedBy((int)(2.0 / (1 + (random.nextDouble() * 2 - 1.0) * PERTURBATION_PERCENTAGE))); assert !duration.isZero() : duration; return newDuration; }
public ReactorImpl(final Duration defaultTimeout, final TimeSource timeSource) { this.defaultTimeout = defaultTimeout; final Duration checkPromiseTimeoutInterval = defaultTimeout.dividedBy(10); this.timeSource = timeSource; this.addRepeatingTask(checkPromiseTimeoutInterval, this::processPromiseTimeouts); }
public ReactorImpl(final Duration defaultTimeout, final TimeSource timeSource) { this.defaultTimeout = defaultTimeout; final Duration checkPromiseTimeoutInterval = defaultTimeout.dividedBy(10); this.timeSource = timeSource; this.addRepeatingTask(checkPromiseTimeoutInterval, this::processPromiseTimeouts); }
protected static Duration getNextRenewInterval(Instant lockedUntilUtc, String identifier) { Duration remainingTime = Duration.between(Instant.now(), lockedUntilUtc); if (remainingTime.isNegative()) { // Lock likely expired. May be there is clock skew. Assume some minimum time remainingTime = MessageAndSessionPump.MINIMUM_MESSAGE_LOCK_VALIDITY; TRACE_LOGGER.warn("Lock of '{}' already expired. May be there is clock skew. Still trying to renew lock", identifier); } Duration buffer = remainingTime.dividedBy(2).compareTo(MAXIMUM_RENEW_LOCK_BUFFER) > 0 ? MAXIMUM_RENEW_LOCK_BUFFER : remainingTime.dividedBy(2); TRACE_LOGGER.debug("Lock of '{}' is valid for '{}'. It will be renewed '{}' before it expires.", identifier, remainingTime, buffer); return remainingTime.minus(buffer); } }
/** * Returns the time at the center */ @Nonnull public LocalDateTime getCenter() { Duration duration = getDuration(); return start.plus(duration.dividedBy(2)); }
/** * Creates a new date range with the same duration but the center at the given position */ @Nonnull public DateTimeRange withCenterAt(@Nonnull LocalDateTime center) { Duration duration = getDuration(); LocalDateTime start = center.minus(duration.dividedBy(2)); LocalDateTime plus = center.plus(duration.dividedBy(2)); return new DateTimeRange(start, plus); }
private static <KEY, VALUE> LoadingCache<KEY, VALUE> createCache(Duration expiry, Function<KEY, VALUE> cacheLoader) { return CacheBuilder.newBuilder() .refreshAfterWrite(expiry.dividedBy(2).toMinutes(), TimeUnit.MINUTES) .expireAfterWrite(expiry.toMinutes(), TimeUnit.MINUTES) .build(new CacheLoader<KEY, VALUE>() { @Override public VALUE load(KEY key) { return cacheLoader.apply(key); } }); }
String eta(Duration elapsed) { if (progress.max <= 0 || progress.indefinite) return "?"; else if (progress.current == 0) return "?"; else return Util.formatDuration( elapsed.dividedBy(progress.current) .multipliedBy(progress.max - progress.current) ); }
String eta(Duration elapsed) { if (progress.max <= 0 || progress.indefinite) return "?"; else if (progress.current == 0) return "?"; else return Util.formatDuration( elapsed.dividedBy(progress.current) .multipliedBy(progress.max - progress.current) ); }
private TemporalAmount divide(TemporalAmount first, int second) { if (first instanceof Period) { long months = ((Period)first).toTotalMonths() / second; return Period.ofMonths((int)months); } else if (first instanceof Duration) { return ((Duration)first).dividedBy(second); } else { throw new DMNRuntimeException(String.format("Cannot divide '%s' by '%s'", first, second)); } } }
private TemporalAmount divide(TemporalAmount first, int second) { if (first instanceof Period) { long months = ((Period)first).toTotalMonths() / second; return Period.ofMonths((int)months); } else if (first instanceof Duration) { return ((Duration)first).dividedBy(second); } else { throw new DMNRuntimeException(String.format("Cannot divide '%s' by '%s'", first, second)); } } }
private void increaseGroupIndex() { currentGroupIndex++; if (currentGroupIndex >= meanCalcCallCount) { currentGroupIndex = 0; if (printToConsole) { Duration sum = getSum(); Duration mean = sum.dividedBy(meanCalcCallCount); System.out.printf("Sum: %s of %d measures - Mean time: %s%n", sum.toString(), meanCalcCallCount, mean.toString()); } } }
private LeaderAvailabilityTimers createElectionTiming( Config config, TimerService timerService, LogProvider logProvider ) { Duration electionTimeout = config.get( CausalClusteringSettings.leader_election_timeout ); return new LeaderAvailabilityTimers( electionTimeout, electionTimeout.dividedBy( 3 ), systemClock(), timerService, logProvider ); }