iro/controller/task.py
branchdevel
changeset 142 7d0c1fa97123
parent 141 90c95fdd1e33
child 143 0b265608b6ce
--- a/iro/controller/task.py	Thu Feb 09 18:27:58 2012 +0100
+++ b/iro/controller/task.py	Fri Feb 10 20:47:57 2012 +0100
@@ -1,10 +1,10 @@
 from functools import partial
-
 from twisted.internet import defer
+from twisted.internet.defer import inlineCallbacks, returnValue 
 
 from ..error import NoRoute, RejectRecipient
 
-from ..model.offer import getPossibleOffers
+from ..model.offer import offers
 from ..model.job import exJobs
 
 from .pool  import taskPool
@@ -23,10 +23,12 @@
         self.d.addErrback(partial(self.job.setError,self))
         return self.d
 
+    @inlineCallbacks
     def _run(self):
-        for offer in getPossibleOffers(self.recipient,self.job.offers):
+        for offer in self.job.offers:
             try:
-                return offer.send(self.recipient,self.job.message)
+                ret = yield (offers[offer].send(self.recipient,self.job.message))
+                returnValue(ret)
             except RejectRecipient:
                 continue
         else: