mirror of
https://github.com/evennia/evennia.git
synced 2026-03-16 21:06:30 +01:00
Add OnDemandHandler to support on-demand timers easier
This commit is contained in:
parent
9f1d14bae2
commit
42aba18ada
15 changed files with 1121 additions and 52 deletions
|
|
@ -5,13 +5,12 @@ Module containing the task handler for Evennia deferred tasks, persistent or not
|
|||
from datetime import datetime, timedelta
|
||||
from pickle import PickleError
|
||||
|
||||
from twisted.internet import reactor
|
||||
from twisted.internet.defer import CancelledError as DefCancelledError
|
||||
from twisted.internet.task import deferLater
|
||||
|
||||
from evennia.server.models import ServerConfig
|
||||
from evennia.utils.dbserialize import dbserialize, dbunserialize
|
||||
from evennia.utils.logger import log_err
|
||||
from twisted.internet import reactor
|
||||
from twisted.internet.defer import CancelledError as DefCancelledError
|
||||
from twisted.internet.task import deferLater
|
||||
|
||||
TASK_HANDLER = None
|
||||
|
||||
|
|
@ -204,7 +203,7 @@ class TaskHandlerTask:
|
|||
return self.task_id
|
||||
|
||||
|
||||
class TaskHandler(object):
|
||||
class TaskHandler:
|
||||
|
||||
"""A light singleton wrapper allowing to access permanent tasks.
|
||||
|
||||
|
|
@ -236,7 +235,7 @@ class TaskHandler(object):
|
|||
|
||||
"""
|
||||
to_save = False
|
||||
value = ServerConfig.objects.conf("delayed_tasks", default={})
|
||||
value = ServerConfig.objects.conf("delayed_tasks", default=dict)
|
||||
if isinstance(value, str):
|
||||
tasks = dbunserialize(value)
|
||||
else:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue