diff options
author | Koushik Dutta <koushd@gmail.com> | 2013-05-20 22:41:12 -0700 |
---|---|---|
committer | Koushik Dutta <koushd@gmail.com> | 2013-05-20 22:41:12 -0700 |
commit | 358a1ba71fdee8668c25b697cd263407496339c5 (patch) | |
tree | 5970335313a8194edce2739975c489f045071817 /AndroidAsync/src | |
parent | b5533915b107ef669c782ff7b485fdf70fec75c6 (diff) | |
download | AndroidAsync-358a1ba71fdee8668c25b697cd263407496339c5.tar.gz AndroidAsync-358a1ba71fdee8668c25b697cd263407496339c5.tar.bz2 AndroidAsync-358a1ba71fdee8668c25b697cd263407496339c5.zip |
Add support and tests for completion callback events on Futures.
Diffstat (limited to 'AndroidAsync/src')
3 files changed, 15 insertions, 7 deletions
diff --git a/AndroidAsync/src/com/koushikdutta/async/future/Future.java b/AndroidAsync/src/com/koushikdutta/async/future/Future.java index a3afdb2..f1108ea 100644 --- a/AndroidAsync/src/com/koushikdutta/async/future/Future.java +++ b/AndroidAsync/src/com/koushikdutta/async/future/Future.java @@ -4,6 +4,6 @@ package com.koushikdutta.async.future; import com.koushikdutta.async.callback.ResultCallback; public interface Future<T> extends Cancellable, java.util.concurrent.Future<T> { - public ResultCallback<T> getResultCallback(); - public void setResultCallback(ResultCallback<T> callback); + public FutureCallback<T> getResultCallback(); + public void setResultCallback(FutureCallback<T> callback); } diff --git a/AndroidAsync/src/com/koushikdutta/async/future/FutureCallback.java b/AndroidAsync/src/com/koushikdutta/async/future/FutureCallback.java new file mode 100644 index 0000000..b1fe530 --- /dev/null +++ b/AndroidAsync/src/com/koushikdutta/async/future/FutureCallback.java @@ -0,0 +1,8 @@ +package com.koushikdutta.async.future; + +/** + * Created by koush on 5/20/13. + */ +public interface FutureCallback<T> { + public void onCompleted(Exception e, T result); +} diff --git a/AndroidAsync/src/com/koushikdutta/async/future/SimpleFuture.java b/AndroidAsync/src/com/koushikdutta/async/future/SimpleFuture.java index 14e5a62..a315fe0 100644 --- a/AndroidAsync/src/com/koushikdutta/async/future/SimpleFuture.java +++ b/AndroidAsync/src/com/koushikdutta/async/future/SimpleFuture.java @@ -72,7 +72,7 @@ public class SimpleFuture<T> extends SimpleCancelable implements DependentFuture Exception exception; public boolean setComplete(Exception e) { - ResultCallback<T> callback; + FutureCallback<T> callback; synchronized (this) { if (!super.setComplete()) return false; @@ -88,7 +88,7 @@ public class SimpleFuture<T> extends SimpleCancelable implements DependentFuture T result; public boolean setComplete(T value) { - ResultCallback<T> callback; + FutureCallback<T> callback; synchronized (this) { if (!super.setComplete()) return false; @@ -107,14 +107,14 @@ public class SimpleFuture<T> extends SimpleCancelable implements DependentFuture return true; } - ResultCallback<T> callback; + FutureCallback<T> callback; @Override - public ResultCallback<T> getResultCallback() { + public FutureCallback<T> getResultCallback() { return callback; } @Override - public void setResultCallback(ResultCallback<T> callback) { + public void setResultCallback(FutureCallback<T> callback) { // callback can only be changed or read/used inside a sync block boolean runCallback; synchronized (this) { |