Verarbeitungsmodule

Verarbeitungsmodule sind im Vergleich zu Eingangs- und Ausgangsmodulen die flexibelsten Module, da sie über einen Eingangs- und einen Ausgangsport verfügen. Verarbeitungsmodule können verwendet werden, um eingehende Datenobjekte zu manipulieren (z. B. zu filtern) oder benutzerdefinierte Algorithmen anzuwenden.

Beispiel
from modules.base.processors.base import AbstractProcessorModule, models

class ProcessorModule(AbstractProcessorModule):
    ...

    def __init__(self, configuration: Configuration):
        super().__init__(configuration=configuration, thread_safe=False)
        self.count: int = 0

    def _run(self, data: models.Data) -> models.Data:
        """
        Method for executing the module.
        :param data: The data object.
        :returns: The data object after processing.
        """
        self.count += 1
        data.fields["data_object_count"] = self.count
        return data
Info
Die Methode _run wird von einem einzigen Thread aufgerufen und ist daher thread-sicher, wenn dies aktiviert ist: thread_safe=True
Zurück
Template
Weiter
Testing