- Timestamp:
- 07/06/13 03:51:11 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
java/main/src/main/java/com/framsticks/util/dispatching/Dispatching.java
r96 r97 4 4 5 5 import com.framsticks.util.FramsticksException; 6 import com.framsticks.util.StateFunctor;7 6 8 7 /** … … 18 17 public static <C> void dispatchIfNotActive(Dispatcher<C> dispatcher, RunAt<? extends C> runnable) { 19 18 if (dispatcher.isActive()) { 20 runnable.run ();19 runnable.runAt(); 21 20 return; 22 21 } 23 22 dispatcher.dispatch(runnable); 24 }25 26 //TODO RunAt StateFunctor27 public static <C> void dispatchOk(Dispatcher<C> dispatcher, final StateFunctor stateFunctor) {28 dispatcher.dispatch(new RunAt<C>() {29 @Override30 public void run() {31 stateFunctor.call();32 }33 });34 23 } 35 24 … … 40 29 41 30 public static <P, C> void invokeDispatch(Dispatcher<P> dispatcher, final Dispatcher<C> finalDispatcher, final RunAt<C> runnable) { 42 dispatcher.dispatch(new RunAt<P>( ) {31 dispatcher.dispatch(new RunAt<P>(runnable) { 43 32 @Override 44 p ublic void run() {33 protected void runAt() { 45 34 finalDispatcher.dispatch(runnable); 46 35 } … … 49 38 50 39 public static void sleep(double seconds) { 40 log.debug("sleeping"); 51 41 try { 52 42 java.lang.Thread.sleep((long) (seconds * 1000)); … … 54 44 55 45 } 46 log.debug("slept"); 56 47 } 57 48 … … 62 53 return; 63 54 } 64 runnable.run ();55 runnable.runAt(); 65 56 } 66 57 … … 95 86 96 87 public static void childChangedState(final JoinableParent parent, final Joinable joinable, final JoinableState state) { 97 dispatcherGuardedInvoke(joinable, new RunAt<Object>( ) {88 dispatcherGuardedInvoke(joinable, new RunAt<Object>(ThrowExceptionHandler.getInstance()) { 98 89 @Override 99 p ublic void run() {90 protected void runAt() { 100 91 log.debug("joinable " + joinable + " is notifying parent " + parent + " about change to " + state); 101 92 parent.childChangedState(joinable, state); … … 140 131 */ 141 132 public QueryRunner(Query<T> query) { 133 //TODO TEH 134 super(ThrowExceptionHandler.getInstance()); 142 135 this.query = query; 143 136 } 144 137 145 138 @Override 146 p ublic void run() {139 protected void runAt() { 147 140 result = query.get(); 148 141 synchronized (this) { … … 206 199 public static <C> void synchronize(Dispatcher<C> dispatcher, double seconds) { 207 200 final Waiter waiter = new Waiter(seconds); 208 dispatcher.dispatch(new RunAt<C>( ) {201 dispatcher.dispatch(new RunAt<C>(ThrowExceptionHandler.getInstance()) { 209 202 @Override 210 p ublic void run() {203 protected void runAt() { 211 204 waiter.pass(); 212 205 }
Note: See TracChangeset
for help on using the changeset viewer.