@Inject RemotePluginFinder(CConfiguration cConf, DiscoveryServiceClient discoveryServiceClient, AuthenticationContext authenticationContext, LocationFactory locationFactory) { this.remoteClient = new RemoteClient(discoveryServiceClient, Constants.Service.APP_FABRIC_HTTP, new DefaultHttpRequestConfig(false), String.format("%s", Constants.Gateway.API_VERSION_3)); this.authorizationEnabled = cConf.getBoolean(Constants.Security.Authorization.ENABLED); this.authenticationContext = authenticationContext; this.locationFactory = locationFactory; this.retryStrategy = RetryStrategies.limit(30, RetryStrategies.fixDelay(2, TimeUnit.SECONDS)); }
@Inject RemotePluginFinder(CConfiguration cConf, DiscoveryServiceClient discoveryServiceClient, AuthenticationContext authenticationContext, LocationFactory locationFactory) { this.remoteClient = new RemoteClient(discoveryServiceClient, Constants.Service.APP_FABRIC_HTTP, new DefaultHttpRequestConfig(false), String.format("%s", Constants.Gateway.API_VERSION_3)); this.authorizationEnabled = cConf.getBoolean(Constants.Security.Authorization.ENABLED); this.authenticationContext = authenticationContext; this.locationFactory = locationFactory; this.retryStrategy = RetryStrategies.limit(30, RetryStrategies.fixDelay(2, TimeUnit.SECONDS)); }
@Test public void testRetryFail() throws InterruptedException { CountDownLatch startLatch = new CountDownLatch(1); Service service = new RetryOnStartFailureService( createServiceSupplier(1000, startLatch, new CountDownLatch(1), false), RetryStrategies.limit(10, RetryStrategies.fixDelay(10, TimeUnit.MILLISECONDS))); final CountDownLatch failureLatch = new CountDownLatch(1); service.addListener(new ServiceListenerAdapter() { @Override public void failed(Service.State from, Throwable failure) { failureLatch.countDown(); } }, Threads.SAME_THREAD_EXECUTOR); service.start(); Assert.assertTrue(failureLatch.await(1, TimeUnit.SECONDS)); Assert.assertFalse(startLatch.await(100, TimeUnit.MILLISECONDS)); }
return RetryStrategies.limit(maxRetries, RetryStrategies.timeLimit(maxTimeSecs, TimeUnit.SECONDS, baseStrategy));
return RetryStrategies.limit(maxRetries, RetryStrategies.timeLimit(maxTimeSecs, TimeUnit.SECONDS, baseStrategy));