private LeaderLatch createNewLeaderLatch() { final LeaderLatch newLeaderLatch = new LeaderLatch( curator, ZKPaths.makePath(zkPaths.getCoordinatorPath(), COORDINATOR_OWNER_NODE), config.getHost()); newLeaderLatch.addListener( new LeaderLatchListener() { @Override public void isLeader() { DruidCoordinator.this.becomeLeader(); } @Override public void notLeader() { DruidCoordinator.this.stopBeingLeader(); } }, Execs.singleThreaded("CoordinatorLeader-%s")); return leaderLatch.getAndSet(newLeaderLatch); }