@Test public void testGetAndIncrement() { getVertx().sharedData().getCounter("foo", ar -> { assertTrue(ar.succeeded()); Counter counter = ar.result(); counter.getAndIncrement(ar2 -> { assertTrue(ar2.succeeded()); assertEquals(0l, ar2.result().longValue()); getVertx().sharedData().getCounter("foo", ar3 -> { assertTrue(ar3.succeeded()); Counter counter2 = ar3.result(); counter2.getAndIncrement(ar4 -> { assertTrue(ar4.succeeded()); assertEquals(1l, ar4.result().longValue()); counter2.get(ar5 -> { assertTrue(ar5.succeeded()); assertEquals(2l, 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(); }
@Test public void testGetAndIncrement() { getVertx().sharedData().getCounter("foo", ar -> { assertTrue(ar.succeeded()); Counter counter = ar.result(); counter.getAndIncrement(ar2 -> { assertTrue(ar2.succeeded()); assertEquals(0l, ar2.result().longValue()); getVertx().sharedData().getCounter("foo", ar3 -> { assertTrue(ar3.succeeded()); Counter counter2 = ar3.result(); counter2.getAndIncrement(ar4 -> { assertTrue(ar4.succeeded()); assertEquals(1l, ar4.result().longValue()); counter2.get(ar5 -> { assertTrue(ar5.succeeded()); assertEquals(2l, ar5.result().longValue()); testComplete(); }); }); }); }); }); await(); }
/** * Increment the counter atomically and return the value before the increment. * @param resultHandler handler which will be passed the value */ public void getAndIncrement(Handler<AsyncResult<Long>> resultHandler) { delegate.getAndIncrement(resultHandler); }
/** * Increment the counter atomically and return the value before the increment. * @param resultHandler handler which will be passed the value */ public void getAndIncrement(Handler<AsyncResult<Long>> resultHandler) { delegate.getAndIncrement(resultHandler); }
@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(); }