public <T> OperationFuture<Boolean> asyncUnlock(final String key,
long casId, final Transcoder<T> tc) {
final CountDownLatch latch = new CountDownLatch(1);
final OperationFuture<Boolean> rv = new OperationFuture<Boolean>(key,
latch, operationTimeout, executorService);
Operation op = opFact.unlock(key, casId, new OperationCallback() {
@Override
public void receivedStatus(OperationStatus s) {
rv.set(s.isSuccess(), s);
}