@Override public void putIfAbsent(K k, V v, long timeout, Handler<AsyncResult<V>> completionHandler) { checkType(k); checkType(v); delegate.putIfAbsent(k, v, timeout, completionHandler); }
@Override public void replaceIfPresent(K k, V oldValue, V newValue, Handler<AsyncResult<Boolean>> resultHandler) { checkType(k); checkType(oldValue); checkType(newValue); delegate.replaceIfPresent(k, oldValue, newValue, resultHandler); }
@Override public void put(K k, V v, Handler<AsyncResult<Void>> completionHandler) { checkType(k); checkType(v); delegate.put(k, v, completionHandler); }
private void testMapOperationResult(BiFunction<LocalMap<String, ShareableObject>, String, ShareableObject> operation) { final String key = "key"; final ShareableObject value = new ShareableObject("some test data"); final LocalMap<String, ShareableObject> map = vertx.sharedData().getLocalMap("foo"); assertNull(map.put(key, value)); final ShareableObject result = operation.apply(map, key); assertEquals(value, result); assertNotSame(value, result); }
private <K, V> void testMapPutGet(K k, V v) { getVertx().sharedData().<K, V>getAsyncMap("foo", onSuccess(map -> { map.put(k, v, onSuccess(vd -> { getVertx().sharedData().<K, V>getAsyncMap("foo", onSuccess(map2 -> { map2.get(k, onSuccess(res -> { assertEquals(v, res); testComplete(); })); })); })); })); await(); }
@Test public void testMap() throws Exception { assertNullPointerException(() -> sharedData.getLocalMap(null)); LocalMap<String, String> map = sharedData.getLocalMap("foo"); LocalMap<String, String> map2 = sharedData.getLocalMap("foo"); assertTrue(map == map2); LocalMap<String, String> map3 = sharedData.getLocalMap("bar"); assertFalse(map3 == map2); map.close(); LocalMap<String, String> map4 = sharedData.getLocalMap("foo"); assertFalse(map4 == map3); }
@Test public void testPutInvalidKey() { getVertx().sharedData().<SomeObject, String>getAsyncMap("foo", onSuccess(map -> { assertIllegalArgumentException(() -> map.put(new SomeObject(), "foo", ar2 -> {})); testComplete(); })); await(); }
@Test public void testPutIfAbsentInvalidKey() { getVertx().sharedData().<SomeObject, String>getAsyncMap("foo", onSuccess(map -> { assertIllegalArgumentException(() -> map.putIfAbsent(new SomeObject(), "foo", ar2 -> {})); testComplete(); })); await(); }
@Override public void size(Handler<AsyncResult<Integer>> resultHandler) { delegate.size(resultHandler); }
@Override public void replace(K k, V v, Handler<AsyncResult<V>> resultHandler) { checkType(k); checkType(v); delegate.replace(k, v, resultHandler); }
@Test public void testCopyOnPutIfAbsent() { testMapOperationResult((map, key) -> map.putIfAbsent(key, new ShareableObject("some other test data"))); }
@Override public void values(Handler<AsyncResult<List<V>>> asyncResultHandler) { delegate.values(asyncResultHandler); }
public void setUp() throws Exception { super.setUp(); startNodes(getNumNodes()); }
public void setUp() throws Exception { super.setUp(); startNodes(numNodes); }
public void setUp() throws Exception { super.setUp(); startNodes(numNodes); }
@Override protected Vertx getVertx() { Vertx vertx = vertices[pos]; if (++pos == getNumNodes()) { pos = 0; } return vertx; }
@Test public void testPutInvalidValue() { getVertx().sharedData().<String, SomeObject>getAsyncMap("foo", onSuccess(map -> { assertIllegalArgumentException(() -> map.put("foo", new SomeObject(), ar2 -> {})); testComplete(); })); await(); }
@Test public void testPutIfAbsentInvalidValue() { getVertx().sharedData().<String, SomeObject>getAsyncMap("foo", onSuccess(map -> { assertIllegalArgumentException(() -> map.putIfAbsent("foo", new SomeObject(), ar2 -> {})); testComplete(); })); await(); }
@Override public void put(K k, V v, long timeout, Handler<AsyncResult<Void>> completionHandler) { checkType(k); checkType(v); delegate.put(k, v, timeout, completionHandler); }
@Override public void putIfAbsent(K k, V v, Handler<AsyncResult<V>> completionHandler) { checkType(k); checkType(v); delegate.putIfAbsent(k, v, completionHandler); }