public void lockInterruptly(NodeEngine nodeEngine, Data key) throws InterruptedException {
lockInterruptly(nodeEngine, key, -1);
}
public void lockInterruptly(NodeEngine nodeEngine, Data key, long ttl) throws InterruptedException {
LockOperation operation = new LockOperation(namespace, key, getThreadId(), ttl, -1);
InternalCompletableFuture<Boolean> f = invoke(nodeEngine, operation, key);
try {
f.get();
} catch (Throwable t) {
throw rethrowAllowInterrupted(t);