@Override public void asyncAddEntry(final byte[] data, final AddEntryCallback callback, final Object ctx) { asyncAddEntry(data, 0, data.length, callback, ctx); }
@Override public void asyncAddEntry(final byte[] data, int offset, int length, final AddEntryCallback callback, final Object ctx) { ByteBuf buffer = Unpooled.wrappedBuffer(data, offset, length); asyncAddEntry(buffer, callback, ctx); }
@Override public Position addEntry(byte[] data, int offset, int length) throws InterruptedException, ManagedLedgerException { final CountDownLatch counter = new CountDownLatch(1); // Result list will contain the status exception and the resulting // position class Result { ManagedLedgerException status = null; Position position = null; } final Result result = new Result(); asyncAddEntry(data, offset, length, new AddEntryCallback() { @Override public void addComplete(Position position, Object ctx) { result.position = position; counter.countDown(); } @Override public void addFailed(ManagedLedgerException exception, Object ctx) { result.status = exception; counter.countDown(); } }, null); counter.await(); if (result.status != null) { log.error("[{}] Error adding entry", name, result.status); throw result.status; } return result.position; }
ledger.asyncAddEntry("entry-1".getBytes(), cb, null); ledger.asyncAddEntry("entry-2".getBytes(), cb, null);
ledger.asyncAddEntry(data.getBytes(), new AddEntryCallback() {
ledger1.asyncAddEntry(("entry-" + i).getBytes(), new AddEntryCallback() {
String content = "entry"; // 5 bytes ByteBuf entry = getMessageWithMetadata(content.getBytes()); ledger.asyncAddEntry(entry, new AddEntryCallback() { @Override public void addComplete(Position position, Object ctx) {
@Override public void asyncAddEntry(final byte[] data, final AddEntryCallback callback, final Object ctx) { asyncAddEntry(data, 0, data.length, callback, ctx); }
@Override public void asyncAddEntry(final byte[] data, final AddEntryCallback callback, final Object ctx) { asyncAddEntry(data, 0, data.length, callback, ctx); }
@Override public void asyncAddEntry(final byte[] data, int offset, int length, final AddEntryCallback callback, final Object ctx) { ByteBuf buffer = Unpooled.wrappedBuffer(data, offset, length); asyncAddEntry(buffer, callback, ctx); }
@Override public void asyncAddEntry(final byte[] data, int offset, int length, final AddEntryCallback callback, final Object ctx) { ByteBuf buffer = Unpooled.wrappedBuffer(data, offset, length); asyncAddEntry(buffer, callback, ctx); }
@Override public Position addEntry(byte[] data, int offset, int length) throws InterruptedException, ManagedLedgerException { final CountDownLatch counter = new CountDownLatch(1); // Result list will contain the status exception and the resulting // position class Result { ManagedLedgerException status = null; Position position = null; } final Result result = new Result(); asyncAddEntry(data, offset, length, new AddEntryCallback() { @Override public void addComplete(Position position, Object ctx) { result.position = position; counter.countDown(); } @Override public void addFailed(ManagedLedgerException exception, Object ctx) { result.status = exception; counter.countDown(); } }, null); counter.await(); if (result.status != null) { log.error("[{}] Error adding entry", name, result.status); throw result.status; } return result.position; }
@Override public Position addEntry(byte[] data, int offset, int length) throws InterruptedException, ManagedLedgerException { final CountDownLatch counter = new CountDownLatch(1); // Result list will contain the status exception and the resulting // position class Result { ManagedLedgerException status = null; Position position = null; } final Result result = new Result(); asyncAddEntry(data, offset, length, new AddEntryCallback() { @Override public void addComplete(Position position, Object ctx) { result.position = position; counter.countDown(); } @Override public void addFailed(ManagedLedgerException exception, Object ctx) { result.status = exception; counter.countDown(); } }, null); counter.await(); if (result.status != null) { log.error("[{}] Error adding entry", name, result.status); throw result.status; } return result.position; }