1.3.1. Create Plugin Type Definition

Created on 30 July 2025, 17 days ago
  • In flowdrop module, create a new plugin type FlowDropNodeProcessor.
  • Define interface FlowDropNodeProcessorInterface with methods:
    • process(array $context): array – Core execution method for node logic.
    • getInputPorts(): array – Defines accepted input connections.
    • getOutputPorts(): array – Defines available output connections.
  • Use @FlowDropNodeProcessor attribute for discovery, allowing PHP 8+ attribute-based plugin registration.
  • Leverage Drupal’s DefaultPluginManager and AnnotatedClassDiscovery pattern.
📌 Task
Status

Active

Component

Code

Created by

🇩🇪Germany D34dMan Hamburg

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @D34dMan
  • 🇩🇪Germany D34dMan Hamburg
    • d34dman committed 0efe1878 on 1.x
      Issue #3538812 by d34dman: 1.3.1. Create Plugin Type Definition
      
  • 🇩🇪Germany D34dMan Hamburg

    Following is the status report.

    - ✅ In flowdrop module, create a new plugin type FlowDropNodeProcessor.
    - ❌ Define interface FlowDropNodeProcessorInterface with methods:
    - ❌process(array $context): array – Core execution method for node logic.
    - ❌getInputPorts(): array – Defines accepted input connections.
    - ❌getOutputPorts(): array – Defines available output connections.
    - ✅Use @FlowDropNodeProcessor attribute for discovery, allowing PHP 8+ attribute-based plugin registration.
    - ✅Leverage Drupal’s DefaultPluginManager and AnnotatedClassDiscovery pattern.

    While trying to define FlowDropNodeProcessorInterface to be as close to the LangFlowComponent interface, I noticed that it doesn't fit to the model I have in mind. so for now am going with a slightly different interface which exposes input and output as schema.

    Marking this as done.

Production build 0.71.5 2024