net.esper.core
Class DispatchFuture

java.lang.Object
  extended by net.esper.core.DispatchFuture
All Implemented Interfaces:
Dispatchable

public class DispatchFuture
extends Object
implements Dispatchable

DispatchFuture can be added to a dispatch queue that is thread-local. It represents is a stand-in for a future dispatching of a statement result to statement listeners.

DispatchFuture is aware of future and past dispatches: (newest) DF3 <--> DF2 <--> DF1 (oldest)


Constructor Summary
DispatchFuture()
          Ctor - use for the first future to indicate completion.
DispatchFuture(UpdateDispatchViewBlocking view, DispatchFuture earlier, long msecTimeout)
          Ctor.
 
Method Summary
 void execute()
          Execute dispatch.
 boolean isCompleted()
          Returns true if the dispatch completed for this future.
 void setLater(DispatchFuture later)
          Hand a later future to the dispatch to use for indicating completion via notify.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DispatchFuture

public DispatchFuture(UpdateDispatchViewBlocking view,
                      DispatchFuture earlier,
                      long msecTimeout)
Ctor.

Parameters:
view - is the blocking dispatch view through which to execute a dispatch
earlier - is the older future
msecTimeout - is the timeout period to wait for listeners to complete a prior dispatch

DispatchFuture

public DispatchFuture()
Ctor - use for the first future to indicate completion.

Method Detail

isCompleted

public boolean isCompleted()
Returns true if the dispatch completed for this future.

Returns:
true for completed, false if not

setLater

public void setLater(DispatchFuture later)
Hand a later future to the dispatch to use for indicating completion via notify.

Parameters:
later - is the later dispatch

execute

public void execute()
Description copied from interface: Dispatchable
Execute dispatch.

Specified by:
execute in interface Dispatchable