public LockInternals(ZooKeeper zkClient, ILockInternalsDriver driver, string path, string lockName, int maxLeases) { _driver = driver; _lockName = lockName; _maxLeases = maxLeases; _zkClient = zkClient; _basePath = ZKPaths.ValidatePath(path); _path = ZKPaths.MakePath(path, lockName); _signal = new SemaphoreSlim(0); _watcher = new ReleaseLockWatcher(_signal); }
public LockInternals(IZooKeeper client, ILockInternalsDriver driver, string path, string lockName, int maxLeases) { _driver = driver; _lockName = lockName; _maxLeases = maxLeases; PathUtils.ValidatePath(path); _client = client; _basePath = path; _path = ZKPaths.MakePath(path, lockName); }
public InterProcessMutex(IZooKeeper client, string path, string lockName, int maxLeases, ILockInternalsDriver driver) { _basePath = path; _internals = new LockInternals(client, driver, path, lockName, maxLeases); }
public ZookeeperMutexLock(ZooKeeper zkClient, string path, string lockName, int maxLeases, ILockInternalsDriver driver, int lockTimeout) { _basePath = ZKPaths.ValidatePath(path); _lockTimeout = lockTimeout; _internals = new LockInternals(zkClient, driver, path, lockName, maxLeases); }
public ZookeeperMutexLock(ZooKeeper zkClient, string path, ILockInternalsDriver driver, int lockTimeout) : this(zkClient, path, LOCK_NAME, 1, driver, lockTimeout) { }