This is an automated email from the ASF dual-hosted git repository.
ivank pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
The following commit(s) were added to refs/heads/master by this push:
new 269f609 Move GenericCallbackFuture so it can be used in production
code
269f609 is described below
commit 269f609f6573ed2b529f20eb8e2e0182baa9db12
Author: Ivan Kelly <[email protected]>
AuthorDate: Mon Aug 13 10:37:34 2018 +0200
Move GenericCallbackFuture so it can be used in production code
It's a useful utility to have when dealing with callbacks.
Author: Ivan Kelly <[email protected]>
Author: Sijie Guo <[email protected]>
Reviewers: Enrico Olivelli <[email protected]>, Sijie Guo
<[email protected]>
This closes #1597 from ivankelly/gen-cb-future
---
.../bookkeeper/proto/BookkeeperInternalCallbacks.java | 17 +++++++++++++++++
.../bookkeeper/client/MetadataUpdateLoopTest.java | 4 +---
.../bookkeeper/meta/AbstractZkLedgerManagerTest.java | 2 +-
.../replication/AuditorPeriodicBookieCheckTest.java | 6 +++---
.../apache/bookkeeper/server/http/TestHttpService.java | 6 +++---
.../java/org/apache/bookkeeper/test/TestCallbacks.java | 17 -----------------
6 files changed, 25 insertions(+), 27 deletions(-)
diff --git
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java
index cd87ff1..d5ed5ae 100644
---
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java
+++
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookkeeperInternalCallbacks.java
@@ -23,12 +23,14 @@ package org.apache.bookkeeper.proto;
import io.netty.buffer.ByteBuf;
+import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.RejectedExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
+import org.apache.bookkeeper.client.BKException;
import org.apache.bookkeeper.client.BookieInfoReader.BookieInfo;
import org.apache.bookkeeper.client.LedgerEntry;
import org.apache.bookkeeper.client.LedgerHandle;
@@ -140,6 +142,21 @@ public class BookkeeperInternalCallbacks {
}
/**
+ * Generic callback future.
+ */
+ public static class GenericCallbackFuture<T>
+ extends CompletableFuture<T> implements GenericCallback<T> {
+ @Override
+ public void operationComplete(int rc, T value) {
+ if (rc != BKException.Code.OK) {
+ completeExceptionally(BKException.create(rc));
+ } else {
+ complete(value);
+ }
+ }
+ }
+
+ /**
* Declaration of a callback interface for the Last Add Confirmed context
of a reader.
*/
public interface ReadEntryCallbackCtx {
diff --git
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MetadataUpdateLoopTest.java
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MetadataUpdateLoopTest.java
index c708a84..cb1dbd2 100644
---
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MetadataUpdateLoopTest.java
+++
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/client/MetadataUpdateLoopTest.java
@@ -42,10 +42,8 @@ import java.util.stream.IntStream;
import org.apache.bookkeeper.meta.LedgerManager;
import org.apache.bookkeeper.meta.MockLedgerManager;
import org.apache.bookkeeper.net.BookieSocketAddress;
-
import org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallback;
-
-import org.apache.bookkeeper.test.TestCallbacks.GenericCallbackFuture;
+import
org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallbackFuture;
import org.apache.bookkeeper.versioning.Version;
import org.apache.commons.lang3.tuple.Triple;
diff --git
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/meta/AbstractZkLedgerManagerTest.java
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/meta/AbstractZkLedgerManagerTest.java
index 0066f99..b2cf68d 100644
---
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/meta/AbstractZkLedgerManagerTest.java
+++
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/meta/AbstractZkLedgerManagerTest.java
@@ -54,8 +54,8 @@ import org.apache.bookkeeper.client.LedgerMetadata;
import org.apache.bookkeeper.common.testing.executors.MockExecutorController;
import org.apache.bookkeeper.conf.ClientConfiguration;
import org.apache.bookkeeper.meta.zk.ZKMetadataDriverBase;
+import
org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallbackFuture;
import
org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.LedgerMetadataListener;
-import org.apache.bookkeeper.test.TestCallbacks.GenericCallbackFuture;
import org.apache.bookkeeper.util.ZkUtils;
import org.apache.bookkeeper.versioning.LongVersion;
import org.apache.bookkeeper.versioning.Version;
diff --git
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/replication/AuditorPeriodicBookieCheckTest.java
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/replication/AuditorPeriodicBookieCheckTest.java
index 50ad2c9..3ec8ae1 100644
---
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/replication/AuditorPeriodicBookieCheckTest.java
+++
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/replication/AuditorPeriodicBookieCheckTest.java
@@ -37,8 +37,8 @@ import org.apache.bookkeeper.meta.LedgerManager;
import org.apache.bookkeeper.meta.LedgerUnderreplicationManager;
import org.apache.bookkeeper.meta.zk.ZKMetadataDriverBase;
import org.apache.bookkeeper.net.BookieSocketAddress;
+import
org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallbackFuture;
import org.apache.bookkeeper.test.BookKeeperClusterTestCase;
-import org.apache.bookkeeper.test.TestCallbacks;
import org.apache.bookkeeper.zookeeper.ZooKeeperClient;
import org.apache.zookeeper.ZooKeeper;
import org.junit.After;
@@ -111,8 +111,8 @@ public class AuditorPeriodicBookieCheckTest extends
BookKeeperClusterTestCase {
ensemble.set(0, new BookieSocketAddress("1.1.1.1", 1000));
md.updateEnsemble(0L, ensemble);
- TestCallbacks.GenericCallbackFuture<LedgerMetadata> cb =
- new TestCallbacks.GenericCallbackFuture<LedgerMetadata>();
+ GenericCallbackFuture<LedgerMetadata> cb =
+ new GenericCallbackFuture<LedgerMetadata>();
ledgerManager.writeLedgerMetadata(lh.getId(), md, cb);
cb.get();
diff --git
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/server/http/TestHttpService.java
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/server/http/TestHttpService.java
index d360b1f..bc57424 100644
---
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/server/http/TestHttpService.java
+++
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/server/http/TestHttpService.java
@@ -47,9 +47,9 @@ import org.apache.bookkeeper.meta.LedgerManager;
import org.apache.bookkeeper.meta.LedgerManagerFactory;
import org.apache.bookkeeper.meta.LedgerUnderreplicationManager;
import org.apache.bookkeeper.net.BookieSocketAddress;
+import
org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallbackFuture;
import org.apache.bookkeeper.replication.AuditorElector;
import org.apache.bookkeeper.test.BookKeeperClusterTestCase;
-import org.apache.bookkeeper.test.TestCallbacks;
import org.apache.bookkeeper.zookeeper.ZooKeeperClient;
import org.apache.zookeeper.ZooKeeper;
import org.junit.Before;
@@ -677,8 +677,8 @@ public class TestHttpService extends
BookKeeperClusterTestCase {
ensemble.set(0, new BookieSocketAddress("1.1.1.1", 1000));
md.updateEnsemble(0L, ensemble);
- TestCallbacks.GenericCallbackFuture<LedgerMetadata> cb =
- new TestCallbacks.GenericCallbackFuture<LedgerMetadata>();
+ GenericCallbackFuture<LedgerMetadata> cb =
+ new GenericCallbackFuture<LedgerMetadata>();
ledgerManager.writeLedgerMetadata(lh.getId(), md, cb);
cb.get();
diff --git
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/TestCallbacks.java
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/TestCallbacks.java
index 23b83bd..237f050 100644
---
a/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/TestCallbacks.java
+++
b/bookkeeper-server/src/test/java/org/apache/bookkeeper/test/TestCallbacks.java
@@ -22,11 +22,9 @@ package org.apache.bookkeeper.test;
import com.google.common.util.concurrent.AbstractFuture;
-import java.util.concurrent.CompletableFuture;
import org.apache.bookkeeper.client.AsyncCallback.AddCallback;
import org.apache.bookkeeper.client.BKException;
import org.apache.bookkeeper.client.LedgerHandle;
-import org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallback;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -38,21 +36,6 @@ public class TestCallbacks {
private static final Logger logger =
LoggerFactory.getLogger(TestCallbacks.class);
/**
- * Generic callback future.
- */
- public static class GenericCallbackFuture<T>
- extends CompletableFuture<T> implements GenericCallback<T> {
- @Override
- public void operationComplete(int rc, T value) {
- if (rc != BKException.Code.OK) {
- completeExceptionally(BKException.create(rc));
- } else {
- complete(value);
- }
- }
- }
-
- /**
* Add callback future implementation.
*/
public static class AddCallbackFuture