proton-director/lib/schedule.py

34 lines
1019 B
Python

from debuggable import Debuggable
from datetime import datetime, timedelta
import json
class Schedule(Debuggable):
start_at = datetime.now()
end_at = datetime.now()
content = {}
name = "default"
def __init__(self, start_at=None, end_at=None, content={}, name=None):
super(Schedule, self).__init__()
self.start_at = start_at
self.end_at = end_at
self.content = content
self.name = name
self.debug("new_schedules","New schedule: {}".format(self.to_string()))
def elapsed(self):
delta = datetime.now() - self.end_at
if delta.total_seconds() > 0 :
self.debug("schedule_elapsed_true","delta is {} for {}".format(delta, self.end_at.isoformat()))
return True
return False
def to_string(self):
return json.dumps({
"start_at": self.start_at.isoformat(),
"end_at": self.end_at.isoformat(),
"name": self.name,
"content": self.content
})