2020-11-26 18:58:08 +01:00
|
|
|
from abc import ABC, abstractmethod
|
|
|
|
from datetime import datetime
|
|
|
|
|
2021-03-03 10:47:52 +01:00
|
|
|
from cpl.configuration.configuration_abc import ConfigurationABC
|
2020-11-26 18:58:08 +01:00
|
|
|
|
|
|
|
|
2021-03-03 10:47:52 +01:00
|
|
|
class ApplicationRuntimeABC(ABC):
|
2020-11-26 18:58:08 +01:00
|
|
|
|
|
|
|
@abstractmethod
|
|
|
|
def __init__(self): pass
|
|
|
|
|
|
|
|
@property
|
|
|
|
@abstractmethod
|
2021-03-03 10:47:52 +01:00
|
|
|
def configuration(self) -> ConfigurationABC: pass
|
2020-11-26 18:58:08 +01:00
|
|
|
|
|
|
|
@property
|
|
|
|
@abstractmethod
|
|
|
|
def start_time(self) -> datetime: pass
|
|
|
|
|
|
|
|
@start_time.setter
|
|
|
|
@abstractmethod
|
|
|
|
def start_time(self, start_time: datetime): pass
|
|
|
|
|
|
|
|
@property
|
|
|
|
@abstractmethod
|
|
|
|
def end_time(self): pass
|
|
|
|
|
|
|
|
@end_time.setter
|
|
|
|
@abstractmethod
|
|
|
|
def end_time(self, end_time: datetime): pass
|
|
|
|
|
|
|
|
@property
|
|
|
|
@abstractmethod
|
|
|
|
def date_time_now(self) -> datetime: pass
|