X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=plomtask%2Fprocesses.py;h=eb438958d4ac7748426116664032cae18f73a5dc;hb=c2004503dc42449f1fa129b8e56eeef0a6df4712;hp=0e8846d3f8591342d87c860f757ec9c2c8c43d07;hpb=8f6b4ec61b126d6edbfda4f20d62398d92390a95;p=plomtask diff --git a/plomtask/processes.py b/plomtask/processes.py index 0e8846d..eb43895 100644 --- a/plomtask/processes.py +++ b/plomtask/processes.py @@ -3,11 +3,11 @@ from __future__ import annotations from typing import Any, Set from plomtask.db import DatabaseConnection, BaseModel from plomtask.misc import VersionedAttribute -from plomtask.conditions import Condition +from plomtask.conditions import Condition, ConditionsRelations from plomtask.exceptions import NotFoundException, BadFormatException -class Process(BaseModel): +class Process(BaseModel, ConditionsRelations): """Template for, and metadata for, Todos, and their arrangements.""" table_name = 'processes' @@ -110,25 +110,6 @@ class Process(BaseModel): walk_steps(step_id, step_node) return steps - def set_conditions(self, db_conn: DatabaseConnection, ids: list[int], - trgt: str = 'conditions') -> None: - """Set self.[target] to Conditions identified by ids.""" - trgt_list = getattr(self, trgt) - while len(trgt_list) > 0: - trgt_list.pop() - for id_ in ids: - trgt_list += [Condition.by_id(db_conn, id_)] - - def set_enables(self, db_conn: DatabaseConnection, - ids: list[int]) -> None: - """Set self.enables to Conditions identified by ids.""" - self.set_conditions(db_conn, ids, 'enables') - - def set_disables(self, db_conn: DatabaseConnection, - ids: list[int]) -> None: - """Set self.disables to Conditions identified by ids.""" - self.set_conditions(db_conn, ids, 'disables') - def _add_step(self, db_conn: DatabaseConnection, id_: int | None,