Package org.jdeferred2.impl
Class DeferredObject<D,F,P>
- java.lang.Object
-
- org.jdeferred2.impl.AbstractPromise<D,F,P>
-
- org.jdeferred2.impl.DeferredObject<D,F,P>
-
- Direct Known Subclasses:
AbstractMasterDeferredObject
,AllValuesDeferredObject
,FilteredPromise
,PipedPromise
,SingleDeferredObject
public class DeferredObject<D,F,P> extends AbstractPromise<D,F,P> implements Deferred<D,F,P>
An implementation ofDeferred
interface.final
Deferred
deferredObject = newDeferredObject
Promise
promise = deferredObject.promise(); promise .done(new DoneCallback() { ... }) .fail(new FailCallback() { ... }) .progress(new ProgressCallback() { ... });Runnable
runnable = newRunnable
() { public void run() { int sum = 0; for (int i = 0; i < 100; i++) { // something that takes time sum += i; deferredObject.notify(i); } deferredObject.resolve(sum); } } // submit the task to run- See Also:
DoneCallback
,FailCallback
,ProgressCallback
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.jdeferred2.Promise
Promise.State
-
-
Field Summary
-
Fields inherited from class org.jdeferred2.impl.AbstractPromise
alwaysCallbacks, doneCallbacks, failCallbacks, log, progressCallbacks, rejectResult, resolveResult, state
-
-
Constructor Summary
Constructors Constructor Description DeferredObject()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Deferred<D,F,P>
notify(P progress)
This should be called when a task is still executing and progress had been made, E.g., during a file download, notify the download progress.Promise<D,F,P>
promise()
Return anPromise
instance (i.e., an observer).Deferred<D,F,P>
reject(F reject)
This should be called when a task has completed unsuccessfully, i.e., a failure may have occurred.Deferred<D,F,P>
resolve(D resolve)
This should be called when a task has completed successfully.-
Methods inherited from class org.jdeferred2.impl.AbstractPromise
always, done, fail, filter, filter, filter, handleException, isPending, isRejected, isResolved, pipe, pipe, pipe, pipeAlways, progress, state, then, then, then, triggerAlways, triggerAlways, triggerDone, triggerDone, triggerFail, triggerFail, triggerProgress, triggerProgress, waitSafely, waitSafely
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jdeferred2.Promise
always, done, fail, filter, filter, filter, isPending, isRejected, isResolved, pipe, pipe, pipe, pipeAlways, progress, state, then, then, then, waitSafely, waitSafely
-
-
-
-
Method Detail
-
resolve
public Deferred<D,F,P> resolve(D resolve)
Description copied from interface:Deferred
This should be called when a task has completed successfully.Deferred
deferredObject = newDeferredObject
();Promise
promise = deferredObject.promise(); promise.done(newDoneCallback
() { public void onDone(Object result) { // Done! } }); // another thread using the same deferredObject deferredObject.resolve("OK");
-
notify
public Deferred<D,F,P> notify(P progress)
Description copied from interface:Deferred
This should be called when a task is still executing and progress had been made, E.g., during a file download, notify the download progress.Deferred
deferredObject = newDeferredObject
();Promise
promise = deferredObject.promise(); promise.progress(newProgressCallback
() { public void onProgress(Object progress) { // Failed :( } }); // another thread using the same deferredObject deferredObject.reject("100%");
-
reject
public Deferred<D,F,P> reject(F reject)
Description copied from interface:Deferred
This should be called when a task has completed unsuccessfully, i.e., a failure may have occurred.Deferred
deferredObject = newDeferredObject
();Promise
promise = deferredObject.promise(); promise.fail(newFailCallback
() { public void onFail(Object result) { // Failed :( } }); // another thread using the same deferredObject deferredObject.reject("BAD");
-
-