Informationen dazu, wie der Job-Prozessor Auftrags-Steuerprogramme beim Start lädt.
Der Job-Prozessor lädt Auftrags-Steuerprogramme von Autodesk und Drittanbietern.
Erweiterungen von Auftrags-Steuerprogrammen von Drittanbietern
Jede Erweiterung von Drittanbietern sollte in einem eigenen Ordner im Verzeichnis für Erweiterungen vorhanden sein:
%allusersprofile%\Autodesk\Vault[Jahr]\Extensions\
Gibt es beispielsweise eine Erweiterung eines Auftrags-Steuerprogramms mit dem Namen JobHandlerSample, so kann diese im Verzeichnis %allusersprofile%\Autodesk\Vault [Jahr]\Extensions\JobHandlerSample liegen.
Der Job-Prozessor sucht für jeden Ordner im Verzeichnis für Erweiterungen nach einer Konfigurationsdatei. Die Konfigurationsdatei ist eine einfache Textdatei, die beliebig benannt werden kann, jedoch auf .vcet.config enden muss. Wenn die Konfigurationsdatei nicht vorhanden ist, kann die Erweiterung nicht geladen werden. Nachfolgend die Inhalte einer Test-Konfigurationsdatei, JobHandlerSample.vcet.config:
<configuration> <connectivity.ExtensionSettings2> <assembly>JobHandlerSample</assembly> <extensionType>JobProcessor</extensionType> </connectivity.ExtensionSettings2> </configuration>
Das Element Baugruppe gibt den Namen der Erweiterungs-DLL an. Dementsprechend heißt die Erweiterungs-DLL im obigen Beispiel JobHandlerSample.dll. Der Erweiterungstyp des Job-Prozessors gibt an, dass es sich um eine Erweiterung für den Job-Prozessor handelt (andere Erweiterungstypen können sich auch in diesem Verzeichnis befinden: WebService und VaultClient).
Die Erweiterung der Baugruppe (im Beispiel JobHandlerSample.dll) wird nun geladen. Beim Ladevorgang werden folgenden Prüfungen durchgeführt:
namespace JobHandlerSample { public class JobHandlerSample : IJobHandler { public bool CanProcess(string strJobType) { return strJobType.Equals("jobhandlersample"); } public JobOutcome Execute(IJobProcessorServices context, IJob job) { return JobOutcome.Success; } } }
In der Baugruppe muss es genau einen öffentlichen Typen geben, der IJobHandler implementiert. Ist dies nicht der Fall, kann die Erweiterung nicht geladen werden. Ein Exemplar dieses Typs ist instanziiert.
Konfiguration des Auftrags-Steuerprogramms
Die Konfigurationsdatei des Auftrags-Steuerprogramms ist eine XML-Datei, die Konfigurationsinformationen für den Job-Prozessor enthält. Sie befindet sich im selben Verzeichnis wie die JobProcessor.exe (in der Regel C:\Programme\Autodesk\Vault Professional [Jahr]\Explorer) und hat den Namen JobProcessor.exe.config. Der relevante Abschnitt für die Konfiguration von Auftrags-Steuerprogrammen liegt unter configuration\connectivityExplorer\jobHandlers. In diesem XML-Codeabschnitt steht jedes jobHandler-Element für ein Auftrags-Steuerprogramm. Die XML-Elemente jobHandler haben folgende Form:
<jobHandler class="jobType" handler="NameOfTypeImplementingIJobHandler"/>
Dabei
Demnach wäre ein gültiges jobHandler-Element für die Beispiel-Erweiterung:
<jobHandler class="jobhandlersample" handler="JobHandlerSample.JobHandlerSample, JobHandlerSample"/>
Sie werden feststellen, dass in der Datei JobProcessor.exe.config bereits für jedes integrierte Autodesk-Steuerprogramm ein Eintrag jobHandler vorhanden ist. Die integrierten Auftrags-Steuerprogramme werden nur geladen, wenn es für sie einen entsprechenden Eintrag gibt. Die integrierten DLL-Dateien für Auftrags-Steuerprogramme befinden sich in demselben Verzeichnis wie die JobProcessor.exe.
Prüfen Sie, ob Auftrags-Steuerprogramme aktiviert sind
Die oben erwähnten Konfigurationsinformationen werden verwendet, um einem Job-Typen einen bestimmten Auftrags-Steuerprogramm zuzuweisen. Nach diesem Schritt wird jedes Auftrags-Steuerprogramm gefragt, ob es den entsprechenden Job-Typ verarbeiten kann. Das Auftrags-Steuerprogramm beantwortet diese Frage durch Implementierung der Schnittstellenmethode IJobHandler.CanProcess. Zu diesem Zeitpunkt sollte das Auftrags-Steuerprogramm prüfen, ob die notwendigen Mittel zur Auftragsverarbeitung seines Typs vorhanden sind (z. B. prüfen einige Auftrags-Steuerprogramme zur DWF-Erstellung, ob Inventor installiert ist).
Bei der Überprüfung, welche Job-Typen derzeit von einem Job-Prozessor verarbeitet werden (über das Menü Verwaltung->Job-Typen...), bedeutet jeder Eintrag, dass ein Auftrags-Steuerprogramm für den Job-Typ erfolgreich geladen wurde. Wenn der Eintrag markiert ist, bedeutet dies, dass das Auftrags-Steuerprogramm aktiviert ist (d.h., es kehrt als true von der IJobHandler.CanProcess-Implementierung zurück). Damit der Job-Prozessor bei einem Auftrags-Steuerprogramm erneut anfragt, ob er fortfahren kann, muss der Benutzer den Job-Prozessor beenden und neu starten.
Wenn alle Auftrags-Steuerprogramme geladen und abgefragt sind, ist der Job-Prozessor bereit, Aufträge aus der Warteschleife abzurufen und zu verarbeiten.
Beispiel Auftrags-Steuerprogramm
Das Vault-SDK enthält das beispielhafte Job-Steuerprogramm JobProcessorApiSamples.Weitere Informationen finden Sie hier.