use of com.hazelcast.multimap.MultiMap in project hazelcast by hazelcast.
the class ClientMultiMapLockTest method testLockTTLExpired.
@Test
public void testLockTTLExpired() {
final MultiMap mm = client.getMultiMap(randomString());
final Object key = "Key";
mm.lock(key, 1, TimeUnit.SECONDS);
assertTrueEventually(new AssertTask() {
@Override
public void run() {
assertFalse(mm.isLocked(key));
}
});
}
use of com.hazelcast.multimap.MultiMap in project hazelcast by hazelcast.
the class ClientMultiMapLockTest method testTryLock_whenLockedBySelf.
@Test
public void testTryLock_whenLockedBySelf() {
final MultiMap mm = client.getMultiMap(randomString());
final Object key = "Key";
mm.lock(key);
assertTrue(mm.tryLock(key));
}
use of com.hazelcast.multimap.MultiMap in project hazelcast by hazelcast.
the class ClientMultiMapLockTest method testUnLock_whenNullKey.
@Test(expected = NullPointerException.class)
public void testUnLock_whenNullKey() {
final MultiMap mm = client.getMultiMap(randomString());
mm.unlock(null);
}
use of com.hazelcast.multimap.MultiMap in project hazelcast by hazelcast.
the class ClientMultiMapLockTest method testForceUnlock_whenKeyLockedByOther.
@Test
public void testForceUnlock_whenKeyLockedByOther() {
final MultiMap mm = client.getMultiMap(randomString());
final Object key = "key";
mm.lock(key);
final CountDownLatch forceUnlock = new CountDownLatch(1);
new Thread() {
public void run() {
mm.forceUnlock(key);
forceUnlock.countDown();
}
}.start();
assertOpenEventually(forceUnlock);
assertFalse(mm.isLocked(key));
}
use of com.hazelcast.multimap.MultiMap in project hazelcast by hazelcast.
the class ClientMultiMapLockTest method testTryLockLeaseTime_whenLockAcquiredByOther.
@Test(timeout = 60000)
public void testTryLockLeaseTime_whenLockAcquiredByOther() throws InterruptedException {
final MultiMap multiMap = getMultiMapForLock();
final String key = randomString();
Thread thread = new Thread() {
public void run() {
multiMap.lock(key);
}
};
thread.start();
thread.join();
boolean isLocked = multiMap.tryLock(key, 1000, TimeUnit.MILLISECONDS, 1000, TimeUnit.MILLISECONDS);
Assert.assertFalse(isLocked);
}
Aggregations