summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Grönholm <alex.gronholm@nextday.fi>2014-06-15 21:45:23 +0300
committerAlex Grönholm <alex.gronholm@nextday.fi>2014-06-16 12:48:00 +0300
commita3e369bb15aebe31f4833fe859750d73e802d40e (patch)
tree49034e26c31c0ddfa7046022985c96750f8e2be7
parent5203bbda036096f634ffa1e10c26a8df2d1f2de7 (diff)
downloadapscheduler-a3e369bb15aebe31f4833fe859750d73e802d40e.tar.gz
Made the wakeup() method public
-rw-r--r--apscheduler/schedulers/asyncio.py6
-rw-r--r--apscheduler/schedulers/base.py17
-rw-r--r--apscheduler/schedulers/blocking.py2
-rw-r--r--apscheduler/schedulers/qt.py4
-rw-r--r--apscheduler/schedulers/tornado.py6
-rw-r--r--apscheduler/schedulers/twisted.py6
-rw-r--r--tests/test_schedulers.py14
7 files changed, 29 insertions, 26 deletions
diff --git a/apscheduler/schedulers/asyncio.py b/apscheduler/schedulers/asyncio.py
index d830438..b91ee97 100644
--- a/apscheduler/schedulers/asyncio.py
+++ b/apscheduler/schedulers/asyncio.py
@@ -36,7 +36,7 @@ class AsyncIOScheduler(BaseScheduler):
def start(self):
super(AsyncIOScheduler, self).start()
- self._wakeup()
+ self.wakeup()
@run_in_event_loop
def shutdown(self, wait=True):
@@ -50,7 +50,7 @@ class AsyncIOScheduler(BaseScheduler):
def _start_timer(self, wait_seconds):
self._stop_timer()
if wait_seconds is not None:
- self._timeout = self._eventloop.call_later(wait_seconds, self._wakeup)
+ self._timeout = self._eventloop.call_later(wait_seconds, self.wakeup)
def _stop_timer(self):
if self._timeout:
@@ -58,7 +58,7 @@ class AsyncIOScheduler(BaseScheduler):
del self._timeout
@run_in_event_loop
- def _wakeup(self):
+ def wakeup(self):
self._stop_timer()
wait_seconds = self._process_jobs()
self._start_timer(wait_seconds)
diff --git a/apscheduler/schedulers/base.py b/apscheduler/schedulers/base.py
index bae8e37..088de87 100644
--- a/apscheduler/schedulers/base.py
+++ b/apscheduler/schedulers/base.py
@@ -217,7 +217,7 @@ class BaseScheduler(six.with_metaclass(ABCMeta)):
# Notify the scheduler so it can scan the new job store for jobs
if self.running:
- self._wakeup()
+ self.wakeup()
def remove_jobstore(self, alias, shutdown=True):
"""
@@ -362,7 +362,7 @@ class BaseScheduler(six.with_metaclass(ABCMeta)):
self._dispatch_event(JobEvent(EVENT_JOB_MODIFIED, job_id, jobstore))
# Wake up the scheduler since the job's next run time may have been changed
- self._wakeup()
+ self.wakeup()
def reschedule_job(self, job_id, jobstore=None, trigger=None, **trigger_args):
"""
@@ -533,6 +533,13 @@ class BaseScheduler(six.with_metaclass(ABCMeta)):
else:
print(six.u(' No scheduled jobs'), file=out)
+ @abstractmethod
+ def wakeup(self):
+ """
+ Notifies the scheduler that there may be jobs due for execution.
+ Triggers :meth:`_process_jobs` to be run in an implementation specific manner.
+ """
+
#
# Private API
#
@@ -687,11 +694,7 @@ class BaseScheduler(six.with_metaclass(ABCMeta)):
# Notify the scheduler about the new job
if wakeup:
- self._wakeup()
-
- @abstractmethod
- def _wakeup(self):
- """Triggers :meth:`_process_jobs` to be run in an implementation specific manner."""
+ self.wakeup()
def _create_trigger(self, trigger, trigger_args):
if isinstance(trigger, BaseTrigger):
diff --git a/apscheduler/schedulers/blocking.py b/apscheduler/schedulers/blocking.py
index 4a1b773..306860f 100644
--- a/apscheduler/schedulers/blocking.py
+++ b/apscheduler/schedulers/blocking.py
@@ -28,5 +28,5 @@ class BlockingScheduler(BaseScheduler):
self._event.wait(wait_seconds or self.MAX_WAIT_TIME)
self._event.clear()
- def _wakeup(self):
+ def wakeup(self):
self._event.set()
diff --git a/apscheduler/schedulers/qt.py b/apscheduler/schedulers/qt.py
index aa6bdf6..dde5afa 100644
--- a/apscheduler/schedulers/qt.py
+++ b/apscheduler/schedulers/qt.py
@@ -21,7 +21,7 @@ class QtScheduler(BaseScheduler):
def start(self):
super(QtScheduler, self).start()
- self._wakeup()
+ self.wakeup()
def shutdown(self, wait=True):
super(QtScheduler, self).shutdown(wait)
@@ -38,7 +38,7 @@ class QtScheduler(BaseScheduler):
self._timer.stop()
del self._timer
- def _wakeup(self):
+ def wakeup(self):
self._start_timer(0)
def _process_jobs(self):
diff --git a/apscheduler/schedulers/tornado.py b/apscheduler/schedulers/tornado.py
index 95cb297..7809330 100644
--- a/apscheduler/schedulers/tornado.py
+++ b/apscheduler/schedulers/tornado.py
@@ -32,7 +32,7 @@ class TornadoScheduler(BaseScheduler):
def start(self):
super(TornadoScheduler, self).start()
- self._wakeup()
+ self.wakeup()
@run_in_ioloop
def shutdown(self, wait=True):
@@ -46,7 +46,7 @@ class TornadoScheduler(BaseScheduler):
def _start_timer(self, wait_seconds):
self._stop_timer()
if wait_seconds is not None:
- self._timeout = self._ioloop.add_timeout(timedelta(seconds=wait_seconds), self._wakeup)
+ self._timeout = self._ioloop.add_timeout(timedelta(seconds=wait_seconds), self.wakeup)
def _stop_timer(self):
if self._timeout:
@@ -54,7 +54,7 @@ class TornadoScheduler(BaseScheduler):
del self._timeout
@run_in_ioloop
- def _wakeup(self):
+ def wakeup(self):
self._stop_timer()
wait_seconds = self._process_jobs()
self._start_timer(wait_seconds)
diff --git a/apscheduler/schedulers/twisted.py b/apscheduler/schedulers/twisted.py
index 2829fed..166b613 100644
--- a/apscheduler/schedulers/twisted.py
+++ b/apscheduler/schedulers/twisted.py
@@ -37,7 +37,7 @@ class TwistedScheduler(BaseScheduler):
def start(self):
super(TwistedScheduler, self).start()
- self._wakeup()
+ self.wakeup()
@run_in_reactor
def shutdown(self, wait=True):
@@ -47,7 +47,7 @@ class TwistedScheduler(BaseScheduler):
def _start_timer(self, wait_seconds):
self._stop_timer()
if wait_seconds is not None:
- self._delayedcall = self._reactor.callLater(wait_seconds, self._wakeup)
+ self._delayedcall = self._reactor.callLater(wait_seconds, self.wakeup)
def _stop_timer(self):
if self._delayedcall and self._delayedcall.active():
@@ -55,7 +55,7 @@ class TwistedScheduler(BaseScheduler):
del self._delayedcall
@run_in_reactor
- def _wakeup(self):
+ def wakeup(self):
self._stop_timer()
wait_seconds = self._process_jobs()
self._start_timer(wait_seconds)
diff --git a/tests/test_schedulers.py b/tests/test_schedulers.py
index aa8a932..c0eae1a 100644
--- a/tests/test_schedulers.py
+++ b/tests/test_schedulers.py
@@ -53,7 +53,7 @@ class DummyScheduler(BaseScheduler):
def shutdown(self, wait=True):
super(DummyScheduler, self).shutdown(wait)
- def _wakeup(self):
+ def wakeup(self):
pass
@@ -291,7 +291,7 @@ class TestBaseScheduler(object):
jobstore.start = MagicMock()
scheduler._real_add_job = MagicMock()
scheduler._dispatch_event = MagicMock()
- scheduler._wakeup = MagicMock()
+ scheduler.wakeup = MagicMock()
scheduler.add_jobstore(jobstore)
assert scheduler._dispatch_event.call_count == 1
@@ -300,9 +300,9 @@ class TestBaseScheduler(object):
assert event.alias == 'default'
if stopped:
assert jobstore.start.call_count == 0
- assert scheduler._wakeup.call_count == 0
+ assert scheduler.wakeup.call_count == 0
else:
- scheduler._wakeup.assert_called_once_with()
+ scheduler.wakeup.assert_called_once_with()
jobstore.start.assert_called_once_with(scheduler, 'default')
def test_add_jobstore_already_exists(self, scheduler):
@@ -667,7 +667,7 @@ Jobstore baz:
job = MagicMock(Job, id='foo')
jobstore = MagicMock(BaseJobStore, _alias='bar',
add_job=MagicMock(side_effect=ConflictingIdError('foo') if job_exists else None))
- scheduler._wakeup = MagicMock()
+ scheduler.wakeup = MagicMock()
scheduler._dispatch_event = MagicMock()
scheduler._jobstores = {'bar': jobstore}
@@ -684,9 +684,9 @@ Jobstore baz:
assert not jobstore.update_job.called
if wakeup:
- scheduler._wakeup.assert_called_once_with()
+ scheduler.wakeup.assert_called_once_with()
else:
- assert not scheduler._wakeup.called
+ assert not scheduler.wakeup.called
assert job._jobstore_alias == 'bar'