flash / core /helper.py
NickNYU
fix changes
9ecd254
raw
history blame
939 Bytes
from core.lifecycle import Lifecycle
class LifecycleHelper:
@classmethod
def initialize_if_possible(cls, ls: Lifecycle) -> None:
if isinstance(ls, Lifecycle) and ls.lifecycle_state.can_initialize(
ls.lifecycle_state.phase
):
ls.initialize()
@classmethod
def start_if_possible(cls, ls: Lifecycle) -> None:
if isinstance(ls, Lifecycle) and ls.lifecycle_state.can_start(
ls.lifecycle_state.phase
):
ls.start()
@classmethod
def stop_if_possible(cls, ls: Lifecycle) -> None:
if isinstance(ls, Lifecycle) and ls.lifecycle_state.can_stop(
ls.lifecycle_state.phase
):
ls.stop()
@classmethod
def dispose_if_possible(cls, ls: Lifecycle) -> None:
if isinstance(ls, Lifecycle) and ls.lifecycle_state.can_dispose(
ls.lifecycle_state.phase
):
ls.dispose()