mirror of https://github.com/langgenius/dify.git
refactor(trigger): Rename and replace PluginTriggerNode with TriggerEventNode
- Updated references from `PluginTriggerNode` to `TriggerEventNode` across multiple files to reflect the new naming convention. - Modified `PluginTriggerNodeData` to `TriggerEventNodeData`, including changes to event parameters for better clarity and consistency in data handling. - Removed the deprecated `trigger_plugin_node.py` file as part of the refactor.
This commit is contained in:
parent
9aec255ee9
commit
35bbf67175
|
|
@ -11,7 +11,7 @@ from core.plugin.entities.request import TriggerInvokeEventResponse
|
|||
from core.trigger.debug.event_bus import TriggerDebugEventBus
|
||||
from core.trigger.debug.events import PluginTriggerDebugEvent, ScheduleDebugEvent, WebhookDebugEvent
|
||||
from core.workflow.enums import NodeType
|
||||
from core.workflow.nodes.trigger_plugin.entities import PluginTriggerNodeData
|
||||
from core.workflow.nodes.trigger_plugin.entities import TriggerEventNodeData
|
||||
from models.model import App
|
||||
from models.provider_ids import TriggerProviderID
|
||||
from models.workflow import Workflow
|
||||
|
|
@ -47,7 +47,7 @@ class TriggerDebugEventPoller(ABC):
|
|||
|
||||
class PluginTriggerDebugEventPoller(TriggerDebugEventPoller):
|
||||
def poll(self) -> TriggerDebugEvent | None:
|
||||
plugin_trigger_data = PluginTriggerNodeData.model_validate(self.node_config.get("data", {}))
|
||||
plugin_trigger_data = TriggerEventNodeData.model_validate(self.node_config.get("data", {}))
|
||||
provider_id = TriggerProviderID(plugin_trigger_data.provider_id)
|
||||
pool_key: str = PluginTriggerDebugEvent.build_pool_key(
|
||||
name=plugin_trigger_data.event_name,
|
||||
|
|
|
|||
|
|
@ -123,9 +123,9 @@ class Node:
|
|||
start_event.provider_id = f"{plugin_id}/{provider_name}"
|
||||
start_event.provider_type = getattr(self.get_base_node_data(), "provider_type", "")
|
||||
|
||||
from core.workflow.nodes.trigger_plugin.trigger_plugin_node import TriggerPluginNode
|
||||
from core.workflow.nodes.trigger_plugin.trigger_event_node import TriggerEventNode
|
||||
|
||||
if isinstance(self, TriggerPluginNode):
|
||||
if isinstance(self, TriggerEventNode):
|
||||
start_event.provider_id = getattr(self.get_base_node_data(), "provider_id", "")
|
||||
start_event.provider_type = getattr(self.get_base_node_data(), "provider_type", "")
|
||||
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ from core.workflow.nodes.question_classifier import QuestionClassifierNode
|
|||
from core.workflow.nodes.start import StartNode
|
||||
from core.workflow.nodes.template_transform import TemplateTransformNode
|
||||
from core.workflow.nodes.tool import ToolNode
|
||||
from core.workflow.nodes.trigger_plugin import TriggerPluginNode
|
||||
from core.workflow.nodes.trigger_plugin import TriggerEventNode
|
||||
from core.workflow.nodes.trigger_schedule import TriggerScheduleNode
|
||||
from core.workflow.nodes.trigger_webhook import TriggerWebhookNode
|
||||
from core.workflow.nodes.variable_aggregator import VariableAggregatorNode
|
||||
|
|
@ -150,8 +150,8 @@ NODE_TYPE_CLASSES_MAPPING: Mapping[NodeType, Mapping[str, type[Node]]] = {
|
|||
"1": TriggerWebhookNode,
|
||||
},
|
||||
NodeType.TRIGGER_PLUGIN: {
|
||||
LATEST_VERSION: TriggerPluginNode,
|
||||
"1": TriggerPluginNode,
|
||||
LATEST_VERSION: TriggerEventNode,
|
||||
"1": TriggerEventNode,
|
||||
},
|
||||
NodeType.TRIGGER_SCHEDULE: {
|
||||
LATEST_VERSION: TriggerScheduleNode,
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
from .trigger_plugin_node import TriggerPluginNode
|
||||
from .trigger_event_node import TriggerEventNode
|
||||
|
||||
__all__ = ["TriggerPluginNode"]
|
||||
__all__ = ["TriggerEventNode"]
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ from core.workflow.nodes.base.entities import BaseNodeData, RetryConfig
|
|||
from core.workflow.nodes.trigger_plugin.exc import TriggerEventParameterError
|
||||
|
||||
|
||||
class PluginTriggerNodeData(BaseNodeData):
|
||||
class TriggerEventNodeData(BaseNodeData):
|
||||
"""Plugin trigger node data"""
|
||||
|
||||
class PluginTriggerInput(BaseModel):
|
||||
|
|
@ -44,7 +44,7 @@ class PluginTriggerNodeData(BaseNodeData):
|
|||
event_name: str = Field(..., description="Event name")
|
||||
subscription_id: str = Field(..., description="Subscription ID")
|
||||
plugin_unique_identifier: str = Field(..., description="Plugin unique identifier")
|
||||
parameters: Mapping[str, PluginTriggerInput] = Field(default_factory=dict, description="Trigger parameters")
|
||||
event_parameters: Mapping[str, PluginTriggerInput] = Field(default_factory=dict, description="Trigger parameters")
|
||||
|
||||
# Error handling
|
||||
error_strategy: Optional[ErrorStrategy] = Field(
|
||||
|
|
@ -68,12 +68,12 @@ class PluginTriggerNodeData(BaseNodeData):
|
|||
|
||||
"""
|
||||
result: Mapping[str, Any] = {}
|
||||
for parameter_name in self.parameters:
|
||||
for parameter_name in self.event_parameters:
|
||||
parameter: EventParameter | None = parameter_schemas.get(parameter_name)
|
||||
if not parameter:
|
||||
result[parameter_name] = None
|
||||
continue
|
||||
event_input = self.parameters[parameter_name]
|
||||
event_input = self.event_parameters[parameter_name]
|
||||
|
||||
# trigger node only supports constant input
|
||||
if event_input.type != "constant":
|
||||
|
|
|
|||
|
|
@ -7,4 +7,4 @@ class TriggerEventNodeError(ValueError):
|
|||
class TriggerEventParameterError(TriggerEventNodeError):
|
||||
"""Exception raised for errors in plugin trigger parameters."""
|
||||
|
||||
pass
|
||||
pass
|
||||
|
|
|
|||
|
|
@ -7,17 +7,17 @@ from core.workflow.node_events import NodeRunResult
|
|||
from core.workflow.nodes.base.entities import BaseNodeData, RetryConfig
|
||||
from core.workflow.nodes.base.node import Node
|
||||
|
||||
from .entities import PluginTriggerNodeData
|
||||
from .entities import TriggerEventNodeData
|
||||
|
||||
|
||||
class TriggerPluginNode(Node):
|
||||
class TriggerEventNode(Node):
|
||||
node_type = NodeType.TRIGGER_PLUGIN
|
||||
execution_type = NodeExecutionType.ROOT
|
||||
|
||||
_node_data: PluginTriggerNodeData
|
||||
_node_data: TriggerEventNodeData
|
||||
|
||||
def init_node_data(self, data: Mapping[str, Any]) -> None:
|
||||
self._node_data = PluginTriggerNodeData.model_validate(data)
|
||||
self._node_data = TriggerEventNodeData.model_validate(data)
|
||||
|
||||
def _get_error_strategy(self) -> Optional[ErrorStrategy]:
|
||||
return self._node_data.error_strategy
|
||||
|
|
@ -18,7 +18,7 @@ from core.trigger.provider import PluginTriggerProviderController
|
|||
from core.trigger.trigger_manager import TriggerManager
|
||||
from core.trigger.utils.encryption import create_trigger_provider_encrypter_for_subscription
|
||||
from core.workflow.enums import NodeType
|
||||
from core.workflow.nodes.trigger_plugin.entities import PluginTriggerNodeData
|
||||
from core.workflow.nodes.trigger_plugin.entities import TriggerEventNodeData
|
||||
from core.workflow.nodes.trigger_schedule.exc import TenantOwnerNotFoundError
|
||||
from extensions.ext_database import db
|
||||
from extensions.ext_redis import redis_client
|
||||
|
|
@ -54,7 +54,7 @@ class TriggerService:
|
|||
)
|
||||
if not subscription:
|
||||
raise ValueError("Subscription not found")
|
||||
node_data: PluginTriggerNodeData = PluginTriggerNodeData.model_validate(node_config.get("data", {}))
|
||||
node_data: TriggerEventNodeData = TriggerEventNodeData.model_validate(node_config.get("data", {}))
|
||||
request = deserialize_request(storage.load_once(f"triggers/{event.request_id}"))
|
||||
if not request:
|
||||
raise ValueError("Request not found")
|
||||
|
|
@ -166,7 +166,7 @@ class TriggerService:
|
|||
continue
|
||||
|
||||
# invoke triger
|
||||
node_data: PluginTriggerNodeData = PluginTriggerNodeData.model_validate(event_node.get("data", {}))
|
||||
node_data: TriggerEventNodeData = TriggerEventNodeData.model_validate(event_node)
|
||||
invoke_response: TriggerInvokeEventResponse = TriggerManager.invoke_trigger_event(
|
||||
tenant_id=subscription.tenant_id,
|
||||
user_id=subscription.user_id,
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ from core.workflow.nodes import NodeType
|
|||
from core.workflow.nodes.base.node import Node
|
||||
from core.workflow.nodes.node_mapping import LATEST_VERSION, NODE_TYPE_CLASSES_MAPPING
|
||||
from core.workflow.nodes.start.entities import StartNodeData
|
||||
from core.workflow.nodes.trigger_plugin.entities import PluginTriggerNodeData
|
||||
from core.workflow.nodes.trigger_plugin.entities import TriggerEventNodeData
|
||||
from core.workflow.nodes.trigger_schedule.entities import TriggerScheduleNodeData
|
||||
from core.workflow.nodes.trigger_webhook.entities import WebhookData
|
||||
from core.workflow.system_variable import SystemVariable
|
||||
|
|
@ -636,7 +636,7 @@ class WorkflowService:
|
|||
if node_type == NodeType.TRIGGER_WEBHOOK:
|
||||
start_data = WebhookData.model_validate(node_data)
|
||||
elif node_type == NodeType.TRIGGER_PLUGIN:
|
||||
start_data = PluginTriggerNodeData.model_validate(node_data)
|
||||
start_data = TriggerEventNodeData.model_validate(node_data)
|
||||
elif node_type == NodeType.TRIGGER_SCHEDULE:
|
||||
start_data = TriggerScheduleNodeData.model_validate(node_data)
|
||||
else:
|
||||
|
|
|
|||
Loading…
Reference in New Issue