@Test public void getAndAdd() { getVertx().sharedData().getCounter("foo", ar -> { assertTrue(ar.succeeded()); Counter counter = ar.result(); counter.getAndAdd(2, ar2 -> { assertTrue(ar2.succeeded()); assertEquals(0l, ar2.result().longValue()); getVertx().sharedData().getCounter("foo", ar3 -> { assertTrue(ar3.succeeded()); Counter counter2 = ar3.result(); counter2.getAndAdd(2l, ar4 -> { assertTrue(ar4.succeeded()); assertEquals(2l, ar4.result().longValue()); counter2.get(ar5 -> { assertTrue(ar5.succeeded()); assertEquals(4l, ar5.result().longValue()); testComplete(); }); }); }); }); }); await(); }
@Test public void testIllegalArguments() throws Exception { assertNullPointerException(() -> getVertx().sharedData().getCounter(null, ar -> {})); assertNullPointerException(() -> getVertx().sharedData().getCounter("foo", null)); getVertx().sharedData().getCounter("foo", ar -> { Counter counter = ar.result(); assertNullPointerException(() -> counter.get(null)); assertNullPointerException(() -> counter.incrementAndGet(null)); assertNullPointerException(() -> counter.getAndIncrement(null)); assertNullPointerException(() -> counter.decrementAndGet(null)); assertNullPointerException(() -> counter.addAndGet(1, null)); assertNullPointerException(() -> counter.getAndAdd(1, null)); assertNullPointerException(() -> counter.compareAndSet(1, 1, null)); testComplete(); }); await(); }
/** * Add the value to the counter atomically and return the value before the add * @param value the value to add * @param resultHandler handler which will be passed the value */ public void getAndAdd(long value, Handler<AsyncResult<Long>> resultHandler) { delegate.getAndAdd(value, resultHandler); }
/** * Add the value to the counter atomically and return the value before the add * @param value the value to add * @param resultHandler handler which will be passed the value */ public void getAndAdd(long value, Handler<AsyncResult<Long>> resultHandler) { delegate.getAndAdd(value, resultHandler); }
@Test public void getAndAdd() { getVertx().sharedData().getCounter("foo", ar -> { assertTrue(ar.succeeded()); Counter counter = ar.result(); counter.getAndAdd(2, ar2 -> { assertTrue(ar2.succeeded()); assertEquals(0l, ar2.result().longValue()); getVertx().sharedData().getCounter("foo", ar3 -> { assertTrue(ar3.succeeded()); Counter counter2 = ar3.result(); counter2.getAndAdd(2l, ar4 -> { assertTrue(ar4.succeeded()); assertEquals(2l, ar4.result().longValue()); counter2.get(ar5 -> { assertTrue(ar5.succeeded()); assertEquals(4l, ar5.result().longValue()); testComplete(); }); }); }); }); }); await(); }
@Test public void testIllegalArguments() throws Exception { assertNullPointerException(() -> getVertx().sharedData().getCounter(null, ar -> {})); assertNullPointerException(() -> getVertx().sharedData().getCounter("foo", null)); getVertx().sharedData().getCounter("foo", ar -> { Counter counter = ar.result(); assertNullPointerException(() -> counter.get(null)); assertNullPointerException(() -> counter.incrementAndGet(null)); assertNullPointerException(() -> counter.getAndIncrement(null)); assertNullPointerException(() -> counter.decrementAndGet(null)); assertNullPointerException(() -> counter.addAndGet(1, null)); assertNullPointerException(() -> counter.getAndAdd(1, null)); assertNullPointerException(() -> counter.compareAndSet(1, 1, null)); testComplete(); }); await(); }