diff --git a/agent/README.txt b/agent/README.txt index 36e6727..5b32e0a 100644 --- a/agent/README.txt +++ b/agent/README.txt @@ -137,7 +137,7 @@ How does this work? >>> from time import time >>> scheduler = agent.scheduler - >>> scheduler.schedule(TestJob(), int(time())) + >>> scheduler.schedule(TestJob()) >>> tester.iterate() executing @@ -150,9 +150,9 @@ classes from the testing package. >>> crawlJob = crawl.CrawlingJob() >>> transporter = transport.Transporter(agent) - >>> transportJob = transporter.jobFactory(transporter) + >>> transportJob = transporter.createJob() >>> crawlJob.successors.append(transportJob) - >>> scheduler.schedule(crawlJob, int(time())) + >>> scheduler.schedule(crawlJob) >>> tester.iterate() Transferring: Dummy resource data for testing purposes. @@ -166,7 +166,7 @@ Let's start with a fresh agent, directly supplying the configuration >>> config = ''' ... crawl[0].type = 'dummy' ... crawl[0].directory = '~/documents' - ... crawl[0].pattern = '.*\.doc' + ... crawl[0].pattern = '*.doc' ... crawl[0].starttime = %s ... crawl[0].transport = 'dummy' ... crawl[0].repeat = 0 diff --git a/agent/schedule.py b/agent/schedule.py index 52c57b0..b45c33f 100644 --- a/agent/schedule.py +++ b/agent/schedule.py @@ -24,7 +24,7 @@ $Id$ from time import time from twisted.internet import reactor -from twisted.internet.defer import Deferred +from twisted.internet.defer import Deferred, succeed from zope.interface import implements from loops.agent.interfaces import IScheduler, IScheduledJob @@ -44,7 +44,8 @@ class Scheduler(object): startTime = int(time()) job.startTime = startTime job.scheduler = self - # TODO: find a better key to identify jobs + while startTime in self.queue: + startTime += 1 self.queue[startTime] = job reactor.callLater(startTime-int(time()), job.run) @@ -67,8 +68,7 @@ class Job(object): def execute(self): """ Must be overridden by subclass. """ - d = Deferred() - return d + return succeed('OK') def reschedule(self, startTime): self.scheduler.schedule(self.copy(), startTime)