mirror of
https://github.com/langgenius/dify.git
synced 2026-07-14 17:07:03 +08:00
27 lines
823 B
Python
27 lines
823 B
Python
"""Typed resource references for workflow ownership chains."""
|
|
|
|
from typing import NamedTuple
|
|
|
|
from models.dataset import Pipeline
|
|
from models.model import App
|
|
|
|
|
|
class WorkflowRef(NamedTuple):
|
|
"""Workflow identifiers used to scope downstream resource lookups."""
|
|
|
|
tenant_id: str
|
|
owner_id: str
|
|
workflow_id: str
|
|
|
|
|
|
class WorkflowRefService:
|
|
"""Factory helpers for app and RAG pipeline workflow refs."""
|
|
|
|
@staticmethod
|
|
def create_app_workflow_ref(app: App, workflow_id: str) -> WorkflowRef:
|
|
return WorkflowRef(tenant_id=app.tenant_id, owner_id=app.id, workflow_id=workflow_id)
|
|
|
|
@staticmethod
|
|
def create_pipeline_workflow_ref(pipeline: Pipeline, workflow_id: str) -> WorkflowRef:
|
|
return WorkflowRef(tenant_id=pipeline.tenant_id, owner_id=pipeline.id, workflow_id=workflow_id)
|