Convert all Atomix exceptions to ONOS storage exceptions
Change-Id: If4ba6b4fa41643fc3d9a9f2d84dc68fd6399a352
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/atomix/primitives/impl/AtomixDistributedTopic.java b/core/store/primitives/src/main/java/org/onosproject/store/atomix/primitives/impl/AtomixDistributedTopic.java
index 29203a2..a6d6536 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/atomix/primitives/impl/AtomixDistributedTopic.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/atomix/primitives/impl/AtomixDistributedTopic.java
@@ -26,6 +26,8 @@
import org.onosproject.store.service.DistributedPrimitive;
import org.onosproject.store.service.Topic;
+import static org.onosproject.store.atomix.primitives.impl.AtomixFutures.adaptFuture;
+
/**
* Default implementation of {@link Topic}.
*
@@ -52,7 +54,7 @@
@Override
public CompletableFuture<Void> publish(T message) {
- return atomixValue.set(message);
+ return adaptFuture(atomixValue.set(message));
}
@Override
@@ -60,7 +62,7 @@
AtomicValueEventListener<T> valueListener =
event -> executor.execute(() -> callback.accept(event.newValue()));
if (callbacks.putIfAbsent(callback, valueListener) == null) {
- return atomixValue.addListener(valueListener);
+ return adaptFuture(atomixValue.addListener(valueListener));
}
return CompletableFuture.completedFuture(null);
}
@@ -69,7 +71,7 @@
public CompletableFuture<Void> unsubscribe(Consumer<T> callback) {
AtomicValueEventListener<T> valueListener = callbacks.remove(callback);
if (valueListener != null) {
- return atomixValue.removeListener(valueListener);
+ return adaptFuture(atomixValue.removeListener(valueListener));
}
return CompletableFuture.completedFuture(null);
}