{
try
{
CuratorEntry entry = CuratorEntry.mustGetEntry(connectionManager, projection);
final InterProcessSemaphoreMutex lock = new InterProcessSemaphoreMutex(entry.getClient(), path);
if ( !lock.acquire(maxWaitMs, TimeUnit.MILLISECONDS) )
{
return new OptionalLockProjection();
}
Closer closer = new Closer()