public void register(final String name, final LeaderService leaderService) { _selectorMap.put(name, leaderService); // Unregister automatically to avoid memory leaks. leaderService.addListener(new AbstractServiceListener() { @Override public void terminated(Service.State from) { unregister(name, leaderService); } @Override public void failed(Service.State from, Throwable failure) { unregister(name, leaderService); } }, MoreExecutors.sameThreadExecutor()); }
public void register(final String name, final LeaderService leaderService) { _selectorMap.put(name, leaderService); // Unregister automatically to avoid memory leaks. leaderService.addListener(new AbstractServiceListener() { @Override public void terminated(Service.State from) { unregister(name, leaderService); } @Override public void failed(Service.State from, Throwable failure) { unregister(name, leaderService); } }, MoreExecutors.sameThreadExecutor()); }
PartitionLeader(int partition) { _partition = partition; String leaderPath = ZKPaths.makePath(_basePath, String.format(LEADER_PATH_PATTERN, partition)); _leaderService = new LeaderService(_curator, leaderPath, _instanceId, _serviceName, _reacquireDelay, _delayUnit, this::leadershipAcquired); _leaderService.addListener(new Service.Listener() { @Override public void running() { _startedFuture.set(null); } @Override public void terminated(Service.State from) { _terminatedFuture.set(null); } }, MoreExecutors.sameThreadExecutor()); }
PartitionLeader(int partition) { _partition = partition; String leaderPath = ZKPaths.makePath(_basePath, String.format(LEADER_PATH_PATTERN, partition)); _leaderService = new LeaderService(_curator, leaderPath, _instanceId, _serviceName, _reacquireDelay, _delayUnit, this::leadershipAcquired); _leaderService.addListener(new Service.Listener() { @Override public void running() { _startedFuture.set(null); } @Override public void terminated(Service.State from) { _terminatedFuture.set(null); } }, MoreExecutors.sameThreadExecutor()); }