mirror of
https://github.com/Abdulazizzn/n8n-enterprise-unlocked.git
synced 2025-12-18 02:21:13 +00:00
39 lines
1019 B
Python
39 lines
1019 B
Python
from enum import Enum
|
|
from dataclasses import dataclass
|
|
from multiprocessing.context import SpawnProcess
|
|
from typing import Optional
|
|
|
|
|
|
class TaskStatus(Enum):
|
|
WAITING_FOR_SETTINGS = "waiting_for_settings"
|
|
RUNNING = "running"
|
|
ABORTING = "aborting"
|
|
|
|
|
|
@dataclass
|
|
class TaskState:
|
|
task_id: str
|
|
status: TaskStatus
|
|
process: Optional[SpawnProcess] = None
|
|
workflow_name: Optional[str] = None
|
|
workflow_id: Optional[str] = None
|
|
node_name: Optional[str] = None
|
|
node_id: Optional[str] = None
|
|
|
|
def __init__(self, task_id: str):
|
|
self.task_id = task_id
|
|
self.status = TaskStatus.WAITING_FOR_SETTINGS
|
|
self.process = None
|
|
self.workflow_name = None
|
|
self.workflow_id = None
|
|
self.node_name = None
|
|
self.node_id = None
|
|
|
|
def context(self):
|
|
return {
|
|
"node_name": self.node_name,
|
|
"node_id": self.node_id,
|
|
"workflow_name": self.workflow_name,
|
|
"workflow_id": self.workflow_id,
|
|
}
|