Hinweis
Bei Verweisen auf Datei- und Verzeichnispositionen in diesem Dokument steht <install-home> für das Verzeichnis, in dem sich das Paket des Agentencontrollers entpackt wurde.
Die Konfigurationsdatei für den Agentenstart (agent.xml) enthält statische Informationen, die der Agentencontroller benötigt, um einen Agenten starten und verwalten zu können. Diese statischen Informationen bestehen aus folgenden Daten:
Die Datei agent.xml muss sich in einem Verzeichnis befinden, das nach dem Agenten selbst benannt ist. Das nach dem Agenten benannte Verzeichnis muss sich in dem Verzeichnis befinden, das vom Element Agent in der Datei serviceconfig.xml angegeben wird. Die Konfigurationsdatei für einen Agenten mit dem Namen 'org.eclipse.tptp.TimeCollector' würde sich zum Beispiel in <install-home>/agents/org.eclipse.tptp.TimeCollector/agent.xml befinden. Der Agentencontroller verwendet den Verzeichnisnamen zum Identifizieren von Agenten, die nach Name angefordert werden. Die Informationen in der Konfigurationsdatei agent.xml sind Metadaten für diesen Agenten.
Beachten Sie, dass der Agentencontroller die agent.xml-Dateien für alle Agenten einmal liest, wenn er gestartet wird. Deswegen erfordert eine Änderung des Inhalts dieser Dateien oder ein Hinzufügen neuer Agentenverzeichnisse einen Neustart des Agentencontrollers, damit die Änderungen wirksam werden.
Element: Agent
Das ist das Stammelement der Agentenkonfigurationsdatei. Es definiert die Metadaten für einen Agenten.
Ein Objekt kann die Metadaten für einen Agenten anfordern und diese Informationen nach Belieben verwenden.
Die darunter aufgelisteten Unterelemente werden vom Agentencontroller zum Starten und Verwalten des Agenten verwendet. Von den Agentenentwicklern können weitere Unterelemente definiert werden, die zusätzliche Informationen als Metadaten zurückgeben müssen. Metadaten sind für einen Client nützlich, der versucht, Laufzeitentscheidungen zu treffen, die davon abhängen, welcher Agent für eine bestimmte Task verwendet wird.
Unterelemente: Anwendung
SingleInstance
Gebunden
MaxControllers
MaxObservers
ConfigFile
LaunchConfigurationAttribute:
- Name
- Dieser Zeichenfolgewert ist der eindeutige Name für den Agenten. Es wird erwartet, dass dieser Wert mit den Namen identisch ist, der vom Agenten verwendet wird, wenn er sich beim Agentencontroller registriert. Wenn diese Werte nicht identisch sind, haben Anforderungen an einen Agenten nach Name unterschiedliche Ergebnisse; diese hängen davon ab, ob der Agent bereits aktiv ist oder nicht.
Element: Schnittstelle
Der Zeichenfolgewert für dieses Element ist der Name einer Schnittstelle, die von diesem Agenten unterstützt wird. In einen Agentenelement können null oder mehrere Schnittstellenelemente vorhanden sein. Eine Schnittstelle ist ein eindeutiger Name für eine Befehlsgruppe, die von einem Agenten unterstützt wird.
- Verwendet von: Agent
Element:SingleInstance
Der ganzzahlige Wert für dieses Element lautet entweder '0' oder '1'. Der Wert '0' (false) gibt an, dass mehrere Instanzen dieses Agenten gleichzeitig ausgeführt werden können. Der Wert '1' (true) gibt an, dass nur eine Instanz dieses Agenten zulässig ist. Wenn der Wert '1' eingestellt ist, weist der Agentencontroller Anforderungen zum Starten einer neuen Instanz dieses Agenten zurück, sobald eine Instanz ausgeführt wird.
Verwendet von: Agent
Element: Gebunden
Der ganzzahlige Wert für dieses Element lautet entweder '0' oder '1'. Der Wert '0' (false) gibt an, dass dieser Agenten nicht an eine Anwendung gebunden ist. Der Wert '1' (true) gibt an, dass der Agent an eine Anwendung gebunden ist. Ein Agent, der an eine Anwendung gebunden ist, kann nur von dieser Anwendung gestartet werden; deswegen verweigert der Agentencontroller das Starten des Agenten, wenn der Wert '1' für diesen Agenten für 'Gebunden' eingestellt ist.
Verwendet von: Agent
Element: MaxControllers
Der ganzzahlige Wert für dieses Element ist '-1', '0' oder ein positiver Wert. Der Wert '-1' gibt an, dass es "keine Begrenzung" gibt. Der Agentencontroller weist Anforderungen in Bezug auf Steuerrechte für diesen Agenten zurück, wenn die Anzahl der Anforderungen diesen Wert überschreitet. Die Rechte des Controllers werden vom Entwickler des Agenten definiert. Die erwartete Verwendung ist die Begrenzung der Anzahl an Objekten, die Konflikte auslösende Aktionen anfordern können, wie zum Beispiel das Starten oder Stoppen einer Datenerfassung.
Verwendet von: Agent
Element: MaxObservers
Der ganzzahlige Wert für dieses Element ist '-1', '0' oder ein positiver Wert. Der Wert '-1' gibt an, dass es "keine Begrenzung" gibt. Der Agentencontroller weist Anforderungen in Bezug auf Überwachungsrechte für diesen Agenten zurück, wenn die Anzahl der Anforderungen diesen Wert überschreitet. Die Rechte einer Überwachungsfunktion werden vom Entwickler des Agenten definiert. Die erwartete Verwendung ist die Begrenzung auf eine Anzahl an Objekten, die Anfragetypaktionen wie das Bereitstellen von Daten, die statisch sind oder erfasst werden, anfordern können (vielleicht aufgrund einer Anforderung von einem Controller).
Verwendet von: Agent
Element: ConfigFile
Der Zeichenfolgewert für dieses Element gibt den vollständigen Pfad und Dateinamen einer zusätzlichen Konfigurationsdatei an, in der dynamische Konfigurationsdaten enthalten sind, auf die der Agent zugreifen kann.
Hierbei handelt es sich um eine optionale Datei, deren Zweck und Inhalt vom Entwickler des Agenten definiert wird. Die erwartete Verwendung für den Agenten ist das Lesen seiner eigenen Konfigurationsdaten in dieser Datei entweder beim Start oder zu einem anderen Zeitpunkt.
Verwendet von: Agent
Element: LaunchConfiguration
Gibt die Parameter der Startkonfiguration für diesen Agenten an.
Verwendet von: Agent
Unterelemente: launchInfo
Element: launchInfo
Bindet Informationen ein, die beim Starten einer ausführbaren Datei verwendet werden.
Verwendet von: LaunchConfiguration
Unterelemente: Anwendung
Element: Anwendung
Dieses Element 'Anwendung' definiert die Informationen, die beim Start der Anwendung verwendet werden.
Sein Attributwert executable kann eine Anwendung durch ihren Aliasnamen (siehe Element 'ApplicationAliases' in der Datei 'serviceconfig.xml') oder durch den Pfadnamen der tatsächlichen ausführbaren Datei für den Start angegeben werden. Der Wert wird zuerst mit der Liste der Aliasnamen abgeglichen, die von der Datei 'serviceconfig.xml' beim Start vom Agentencontroller abgerufen wurde. Wenn keine Übereinstimmung gefunden wird, werden die Startinformationen im Anwendungselement unverändert verwendet.
Wenn eine Übereinstimmung gefunden wird, werden die Startinformationen für diesen Aliasnamen in Verbindung mit den dort definierten Informationen wie unten beschrieben verwendet.
Verwendet von: LaunchConfiguration
Unterelemente: Variable
Parameter
Attribute:
- executable
Dieser Zeichenfolgewert gibt den Namen der Anwendung an, die gestartet werden soll. Es kann ein Aliasname oder der Pfadname der tatsächlichen ausführbaren Datei für den Start sein. Wenn es ein Aliasname ist, wird der Name der ausführbaren Datei durch den Pfadwert ersetzt, der in diesem Aliasnamen angegeben ist.
- location
(Optional) Dieser Zeichenfolgewert gibt das Verzeichnis an, in dem die ausführbare Datei gestartet werden soll. Manchmal wird dieses Verzeichnis auch als Arbeitsverzeichnis für die ausführbare Datei bezeichnet, während sie ausgeführt wird. Wenn es übergangen wird und für die ausführbare Datei kein übereinstimmender Aliasname vorhanden ist, wird die Anwendung aus dem Verzeichnis ausgeführt, in dem sich der Agentencontroller befindet. Wenn es übergangen wird und für die ausführbare Datei ein übereinstimmender Aliasname vorhanden ist, wird die Position verwendet, die im Aliasnamen angegeben ist.
Element: Variable
Dieses Element 'Variable' definiert eine Umgebungsvariable und wie sie innerhalb dieser Umgebung positioniert ist. Wenn sie sich im Element 'Anwendung' befindet, ändert sie die Umgebung, die beim Starten der Anwendung verwendet wird. Für eine Anwendung können null oder mehrere dieser Elemente definiert werden.
Wenn das Attribut executable der Anwendung einen Aliasname angibt, werden die Einstellungen für die Umgebungsvariable des Aliasnamens auf die Standardumgebung angewendet, und anschließend werden die hier definierten Umgebungsvariablen zusätzlich zu diesen angewendet.
Verwendet von: Anwendung
Attribute:
- name
Dieser Zeichenfolgewert gibt den Namen der Umgebungsvariable an.
- value
Dieser Zeichenfolgewert gibt den Wert der Umgebungsvariable an.
- position
(Optional) Dieser Zeichenfolgewert lautet entweder "append", "prepend" oder "replace" und gibt an, wo sich diese Umgebung in Bezug zur aktuellen Umgebung befindet. Wenn es übergangen wird, wird die Variable zur Umgebung hinzugefügt.
Element: Parameter
Das Element 'Parameter' definiert einen Befehlszeilenparameter, der beim Start an die Anwendung übergeben werden soll. Für eine Anwendung können null oder mehrere dieser Elemente definiert werden.
Wenn das Attribut executable der Anwendung einen Aliasname angibt, werden die Befehlszeilenparameter des Aliasnamens verwendet, und anschließend werden die hier definierten Umgebungsvariablen zusätzlich zu diesen angewendet.
Verwendet von: Anwendung
Attribute:
- value
Dieser Zeichenfolgewert gibt einen Befehlszeilenparameter an.
- position
(Optional) Dieser Zeichenfolgewert lautet entweder "append", "prepend" oder "replace" und gibt an, wo dieses Argument in Bezug zu den vorhandenen Befehlszeilenparametern gespeichert werden soll. Wenn es übergangen wird, wird das Argument an die Befehlszeile angefügt.
<Agent Name="org.eclipse.tptp.TimeCollector">
<Interface>org.eclipse.tptp.agent</Interface>
<Interface>org.eclipse.tptp.collector</Interface>
<SingleInstance>0</SingleInstance>
<Bound>0</Bound>
<MaxControllers>-1</MaxControllers>
<MaxObservers>-1</MaxObservers>
<ConfigFile>c:\tptp\agents\org.eclipse.tptp.TimeCollector\config\agentconfig.xml</ConfigFile>
<LaunchConfiguration>
<launchInfo>
<Application executable=".\TimeCollector.exe">
<Parameter value="-serviceconfig ..\config\serviceconfig.xml" />
</Application>
</launchInfo>
</LaunchConfiguration>
</Agent>
Verwandte Verweise
Übersicht über die Konfiguration des Agenten und von Agent Controller
Copyright (C) 2005, 2006 Intel Corporation.