summaryrefslogtreecommitdiffstats
path: root/dcaedt_catalog/commons/src/main/java/org/onap/sdc/dcae/catalog/commons/Future.java
diff options
context:
space:
mode:
Diffstat (limited to 'dcaedt_catalog/commons/src/main/java/org/onap/sdc/dcae/catalog/commons/Future.java')
-rw-r--r--dcaedt_catalog/commons/src/main/java/org/onap/sdc/dcae/catalog/commons/Future.java35
1 files changed, 35 insertions, 0 deletions
diff --git a/dcaedt_catalog/commons/src/main/java/org/onap/sdc/dcae/catalog/commons/Future.java b/dcaedt_catalog/commons/src/main/java/org/onap/sdc/dcae/catalog/commons/Future.java
new file mode 100644
index 0000000..c50f467
--- /dev/null
+++ b/dcaedt_catalog/commons/src/main/java/org/onap/sdc/dcae/catalog/commons/Future.java
@@ -0,0 +1,35 @@
+package org.onap.sdc.dcae.catalog.commons;
+
+import org.onap.sdc.dcae.catalog.commons.Future;
+import org.onap.sdc.dcae.catalog.commons.FutureHandler;
+
+/**
+ * Modeled after the vertx future
+ */
+public interface Future<T> {
+
+ public T result();
+
+ public Future<T> result(T theResult);
+
+//rename 'cause' to 'failure'
+
+ public Throwable cause();
+
+ public Future<T> cause(Throwable theError);
+
+ public boolean succeeded();
+
+ public boolean failed();
+
+ public boolean complete();
+
+ public T waitForResult() throws Exception;
+
+ //public T waitForResult(long theTimeout) throws Exception;
+
+ public Future<T> waitForCompletion() throws InterruptedException;
+
+ public Future<T> setHandler(FutureHandler<T> theHandler);
+
+}