/** * Creates a new exception for the given timeout deadline and actual timeout. * * @param deadline When was the deadline in UNIX time. * @return a new TimeoutValueException. */ public static DeadlineTimeoutException from(final Deadline deadline) { return new DeadlineTimeoutException(deadline); }
public void validatePendingRequests() { final Iterator<LeaseRequest<T, C>> it = pending.iterator(); while (it.hasNext()) { final LeaseRequest<T, C> request = it.next(); final BasicFuture<PoolEntry<T, C>> future = request.getFuture(); if (future.isCancelled() && !request.isDone()) { it.remove(); } else { final Deadline deadline = request.getDeadline(); if (deadline.isExpired()) { request.failed(DeadlineTimeoutException.from(deadline)); } if (request.isDone()) { it.remove(); } } } }
@Test public void testMessage() { final Deadline deadline = Deadline.fromUnixMillis(1000).freeze(); Assert.assertTrue(deadline.toString(), deadline.isExpired()); final String format = deadline.formatTarget(); final TimeValue diff = TimeValue.ofMilliseconds(deadline.remaining()); Assert.assertEquals("Deadline: " + format + ", " + diff + " overdue", DeadlineTimeoutException.from(deadline).getMessage()); }
public void validatePendingRequests() { this.lock.lock(); try { final long now = System.currentTimeMillis(); final ListIterator<LeaseRequest<T, C>> it = this.leasingRequests.listIterator(); while (it.hasNext()) { final LeaseRequest<T, C> request = it.next(); final BasicFuture<PoolEntry<T, C>> future = request.getFuture(); if (future.isCancelled() && !request.isDone()) { it.remove(); } else { final Deadline deadline = request.getDeadline(); if (deadline.isBefore(now)) { request.failed(DeadlineTimeoutException.from(deadline)); } if (request.isDone()) { it.remove(); this.completedRequests.add(request); } } } } finally { this.lock.unlock(); } fireCallbacks(); }
public void validatePendingRequests() { final Iterator<LeaseRequest<T, C>> it = pending.iterator(); while (it.hasNext()) { final LeaseRequest<T, C> request = it.next(); final BasicFuture<PoolEntry<T, C>> future = request.getFuture(); if (future.isCancelled() && !request.isDone()) { it.remove(); } else { final Deadline deadline = request.getDeadline(); if (deadline.isExpired()) { request.failed(DeadlineTimeoutException.from(deadline)); } if (request.isDone()) { it.remove(); } } } }
/** * Creates a new exception for the given timeout deadline and actual timeout. * * @param deadline When was the deadline in UNIX time. * @return a new TimeoutValueException. */ public static DeadlineTimeoutException from(final Deadline deadline) { return new DeadlineTimeoutException(deadline); }
public void validatePendingRequests() { this.lock.lock(); try { final long now = System.currentTimeMillis(); final ListIterator<LeaseRequest<T, C>> it = this.leasingRequests.listIterator(); while (it.hasNext()) { final LeaseRequest<T, C> request = it.next(); final BasicFuture<PoolEntry<T, C>> future = request.getFuture(); if (future.isCancelled() && !request.isDone()) { it.remove(); } else { final Deadline deadline = request.getDeadline(); if (deadline.isBefore(now)) { request.failed(DeadlineTimeoutException.from(deadline)); } if (request.isDone()) { it.remove(); this.completedRequests.add(request); } } } } finally { this.lock.unlock(); } fireCallbacks(); }
leaseRequest.failed(DeadlineTimeoutException.from(deadline)); } else { final PoolEntry<T, C> availableEntry = getAvailableEntry(state);
leaseRequest.failed(DeadlineTimeoutException.from(deadline)); } else { final PoolEntry<T, C> availableEntry = getAvailableEntry(state);
request.failed(DeadlineTimeoutException.from(deadline)); return false;
request.failed(DeadlineTimeoutException.from(deadline)); return false;