Benutzer-Werkzeuge

Webseiten-Werkzeuge


extensibility:plugins-runnable

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
extensibility:plugins-runnable [2024/08/20 15:35] adm-dlatikayextensibility:plugins-runnable [2025/07/03 14:02] (aktuell) – [Beispiel] adm-dlatikay
Zeile 5: Zeile 5:
 ===== Beschreibung ===== ===== 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 Skripts verwendet werden kann, und die so erstellen Skripten getestet und abgespielt werden können, ohne zuvor eine Hintergrund-Job-Definition hochladen zu müssen.+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 ===== ===== Beispiel =====
Zeile 12: Zeile 12:
 public class ExampleWorker : AutomationScriptBase public class ExampleWorker : AutomationScriptBase
 { {
-    public ExampleWorker(ScriptedAutomator scriptHost, IdentityBase executiveIdentity, IEventBus eventBus, ISecretService secretService+    public ExampleWorker(ScriptedAutomator scriptHost, IdentityBase executiveIdentity, IEventBus eventBus) 
         : base(scriptHost, executiveIdentity, eventBus)         : base(scriptHost, executiveIdentity, eventBus)
     {     {
Zeile 19: Zeile 19:
     public override bool Execute()     public override bool Execute()
     {     {
-        VolatileScriptOutputRepository.Add( +        /* Ein minimales Beispiel eines direkt ausführbaren CAATS-Plugins */ 
-            Job+        Job.Success($"{Job.Name.First().Content} successfully completed");
-            BackgroundJobStage.JsgAutomation, +
-            BackgroundJobOutputMessageLevel.BjomlSuccess, +
-            $"{Job.Name.First().Content} successfully completed" +
-        );+
  
         return true;         return true;
Zeile 35: Zeile 31:
  
 ^ Fehlercode      ^ Bedeutung       ^ Lösung          ^ ^ Fehlercode      ^ Bedeutung       ^ Lösung          ^
-| CAATS0002 | No suitable public type for runnable plugin | Definiern Sie in Ihrem Skript eine öffentliche Klasse des verlangten Basistyps | +| 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 | Reduzieren Sie die Anzahl der öffentlichen Klassen des angegebenen Basistyps in Ihrem Skript auf 1 |+| 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.1724168140.txt.gz · Zuletzt geändert: 2024/08/20 15:35 von adm-dlatikay

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki