Benutzer-Werkzeuge

Webseiten-Werkzeuge


extensibility:plugins-runnable

Plugins (ausführbare Programme)

Diese Art von Plugins sind Skripten, die über die Hintergrundverarbeitung (Bkg.API) manuell gestartet, sowie zeitgesteuert oder ereignisgesteuert ausgeführt werden.

Beschreibung

Ausführbare Plugins sind dadurch gekennzeichnet, dass sie eine öffentliche Klasse des Basistyps AutomationScriptBase implementieren. Dadurch erhält das Plugin einen Einsprungpunkt für die Laufzeitumgebung, in den hineingestartet werden kann. Kompilierung und Bindung an die Laufzeitumgebung erfolgt dabei mit dem gleichen Mechanismus, der auch mit direkt in Hintergrund-Jobs eingebetteten Skripten zum Einsatz kommt. Der Vorteil bei der Verwendung eines Plugins liegt hier darin, dass die in CAATS integrierte Entwicklungsumgebung zum Erstellen und Bearbeiten dieser Skripten verwendet werden kann, und die so erstellen Programme getestet und abgespielt werden können, ohne zuvor eine Hintergrund-Job-Definition hochladen zu müssen.

Beispiel

runnable_plugin_example.cs
public class ExampleWorker : AutomationScriptBase
{
    public ExampleWorker(ScriptedAutomator scriptHost, IdentityBase executiveIdentity, IEventBus eventBus) 
        : base(scriptHost, executiveIdentity, eventBus)
    {
    }
 
    public override bool Execute()
    {
        /* Ein minimales Beispiel eines direkt ausführbaren CAATS-Plugins */
        Job.Success($"{Job.Name.First().Content} successfully completed");
 
        return true;
    }
}

Fehlercodes und Lösungen

Beim Programmieren von ausführbaren Plugins können - abseits von den Warnungen und Fehlermeldungen des C# Compilers - folgende CAATS-spezifische Fehlercodes vorkommen:

Fehlercode Bedeutung Lösung
CAATS0002 No suitable public type for runnable plugin
Each kind of plugin must use a well-known namespace and interface/base type for its main class, so the automation can instantiate and call it
Definiern Sie in Ihrem Skript eine öffentliche Klasse des verlangten Basistyps
CAATS0004 Runnable plugin exposes more than one main class
Each plugin script must export exactly one main class that satisfies the automator's type constraints
Reduzieren Sie die Anzahl der öffentlichen Klassen des angegebenen Basistyps in Ihrem Skript auf 1
extensibility/plugins-runnable.txt · Zuletzt geändert: 2025/07/03 14:02 von adm-dlatikay

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki