@Override public void getLoadBalancedServiceProperties(String serviceName, Callback<ServiceProperties> callback) { boolean waitForUpdatedValue = _timeout > 0; // if timeout is 0, we must not add the timeout callback, otherwise it would trigger immediately if (waitForUpdatedValue) { Callback<ServiceProperties> finalCallback = callback; callback = new TimeoutCallback<>(_executor, _timeout, _unit, new Callback<ServiceProperties>() { @Override public void onError(Throwable e) { finalCallback.onError(new ServiceUnavailableException(serviceName, "PEGA_1011. "+e.getMessage(), e)); } @Override public void onSuccess(ServiceProperties result) { finalCallback.onSuccess(result); } }, "Timeout while fetching service"); } getLoadBalancedServiceProperties(serviceName, waitForUpdatedValue, callback); }
private void listenToServiceAndCluster(String serviceName, Callback<ServiceProperties> callback) { boolean waitForUpdatedValue = _timeout > 0; // if timeout is 0, we must not add the timeout callback, otherwise it would trigger immediately if (waitForUpdatedValue) { Callback<ServiceProperties> finalCallback = callback; callback = new TimeoutCallback<>(_executor, _timeout, _unit, new Callback<ServiceProperties>() { @Override public void onError(Throwable e) { finalCallback.onError(new ServiceUnavailableException(serviceName, "PEGA_1004. " +e.getMessage(), e)); } @Override public void onSuccess(ServiceProperties result) { finalCallback.onSuccess(result); } }, "Timeout while fetching service"); } listenToServiceAndCluster(serviceName, waitForUpdatedValue, callback); }
new TimeoutCallback<>(_scheduler, shutdownTimeout, TimeUnit.MILLISECONDS, new Callback<None>()
Callback<None> timeoutCallback = new TimeoutCallback<>(_executorService, _warmUpTimeoutSeconds, TimeUnit.SECONDS, new Callback<None>()
new TimeoutCallback<>(_executorService, _warmUpTimeoutSeconds, TimeUnit.SECONDS, new Callback<None>()
new TimeoutCallback<>(_scheduler, perRequestTimeout.longValue(), TimeUnit.MILLISECONDS, callback, "per request timeout");