/** * Add this instance to the leadership election and attempt to acquire leadership. * * @throws Exception errors */ public void start() throws Exception { Preconditions.checkState(state.compareAndSet(State.LATENT, State.STARTED), "Already started"); client.getConnectionStateListenable().addListener(listener); client.newNamespaceAwareEnsurePath(latchPath).ensure(client.getZookeeperClient()); internalStart(); }
LockInternals( CuratorFramework client, LockInternalsDriver driver, String path, String lockName, int maxLeases) { this.driver = driver; this.lockName = lockName; this.maxLeases = maxLeases; PathUtils.validatePath(path); this.client = client; this.basePath = path; this.path = ZKPaths.makePath(path, lockName); ensurePath = client.newNamespaceAwareEnsurePath(basePath); }