@Test public void testSimpleRefresh() throws InterruptedException { Builder builder = LockRequest.builder(ImmutableSortedMap.of(lock1, LockMode.WRITE)); builder.timeoutAfter(SimpleTimeDuration.of(5, TimeUnit.SECONDS)); LockResponse lock = server.lockWithFullLockResponse(LockClient.ANONYMOUS, builder.build()); Thread.sleep(10000); Set<HeldLocksToken> refreshTokens = server.refreshTokens(ImmutableList.of(lock.getToken())); Assert.assertEquals(1, refreshTokens.size()); } }
.build()), 100); LockRequest request = LockRequest.builder(ImmutableSortedMap.of(lock1, LockMode.WRITE)) .doNotBlock().timeoutAfter(SimpleTimeDuration.of(500, TimeUnit.MILLISECONDS)) .build(); HeldLocksToken token = server.lockWithFullLockResponse(client, request).getToken();
request = LockRequest.builder(ImmutableSortedMap.of( lock1, LockMode.READ, lock2, LockMode.WRITE)) .timeoutAfter(SimpleTimeDuration.of(200, TimeUnit.MILLISECONDS)) .doNotBlock().build(); } else if (clientID >= partition[0] && clientID < partition[1]) { request = LockRequest.builder(ImmutableSortedMap.of( lock2, LockMode.READ)) .timeoutAfter(SimpleTimeDuration.of(200, TimeUnit.MILLISECONDS)) .blockForAtMost( SimpleTimeDuration.of(200, TimeUnit.MILLISECONDS)) request = LockRequest.builder(ImmutableSortedMap.of( lock1, LockMode.WRITE, lock2, LockMode.READ)) .timeoutAfter(SimpleTimeDuration.of(200, TimeUnit.MILLISECONDS)) .doNotBlock().build(); } else if (clientID >= partition[2] && clientID < partition[3]) { request = LockRequest.builder(ImmutableSortedMap.of( lock1, LockMode.WRITE)) .timeoutAfter(SimpleTimeDuration.of(200, TimeUnit.MILLISECONDS)) .build(); } else { request = LockRequest.builder(ImmutableSortedMap.of( lock1, LockMode.READ, lock2, LockMode.WRITE)) .timeoutAfter(SimpleTimeDuration.of(200, TimeUnit.MILLISECONDS)) .blockForAtMost( SimpleTimeDuration.of(2000, TimeUnit.MILLISECONDS))
LockRequest.Builder newRequest = LockRequest.builder(request.getLockDescriptors()); newRequest.doNotBlock(); newRequest.timeoutAfter(request.getLockTimeout()); if (request.getVersionId() != null) { newRequest.withLockedInVersionId(request.getVersionId());
Object readResolve() { Builder builder = new Builder(lockMap).timeoutAfter(lockTimeout); if (lockGroupBehavior == LockGroupBehavior.LOCK_AS_MANY_AS_POSSIBLE) { builder.lockAsManyAsPossible(); } if (blockingMode == BlockingMode.DO_NOT_BLOCK) { builder.doNotBlock(); } else if (blockingMode == BlockingMode.BLOCK_UNTIL_TIMEOUT) { builder.blockForAtMost(blockingDuration); } else if (blockingMode == BlockingMode.BLOCK_INDEFINITELY_THEN_RELEASE) { builder.lockAndRelease(); } if (versionId != null) { builder.withLockedInVersionId(versionId); } builder.withCreatingThreadName(creatingThreadName); return builder.build(); } }
.timeoutAfter(SimpleTimeDuration.of(1, TimeUnit.MILLISECONDS)) .timeoutAfter(SimpleTimeDuration.of(1, TimeUnit.MILLISECONDS)).build(); Assert.fail(); } catch (IllegalStateException expected) {
.timeoutAfter(SimpleTimeDuration.of(1, TimeUnit.SECONDS)).doNotBlock().build(); HeldLocksToken token = server.lockWithFullLockResponse(LockClient.ANONYMOUS, request).getToken(); Assert.assertNotNull(token);
LockRequest.Builder newRequest = LockRequest.builder(request.getLockDescriptors()); newRequest.doNotBlock(); newRequest.timeoutAfter(request.getLockTimeout()); if (request.getVersionId() != null) { newRequest.withLockedInVersionId(request.getVersionId());
Object readResolve() { Builder builder = new Builder(lockMap).timeoutAfter(lockTimeout); if (lockGroupBehavior == LockGroupBehavior.LOCK_AS_MANY_AS_POSSIBLE) { builder.lockAsManyAsPossible(); } if (blockingMode == BlockingMode.DO_NOT_BLOCK) { builder.doNotBlock(); } else if (blockingMode == BlockingMode.BLOCK_UNTIL_TIMEOUT) { builder.blockForAtMost(blockingDuration); } else if (blockingMode == BlockingMode.BLOCK_INDEFINITELY_THEN_RELEASE) { builder.lockAndRelease(); } if (versionId != null) { builder.withLockedInVersionId(versionId); } builder.withCreatingThreadName(creatingThreadName); return builder.build(); } }