Opmerking
Waar in dit document naar bestands- en directorylocaties wordt verwezen, wordt met <installatiedirectory> de directory bedoeld waarin het pakket van de agentcontroller is uitgepakt.
Het startconfiguratiebestand (agent.xml) bevat statische gegevens die de agentcontroller gebruikt om een agent te kunnen starten en besturen. Deze statische gegevens omvatten het volgende:
Het bestand agent.xml moet zijn opgeslagen in een directory die voor de agent zelf is benoemd. De directory moet zich bevinden in de directory die is opgegeven met het element Agent van het bestand serviceconfig.xml. Een voorbeeld: voor een agent met de naam org.eclipse.tptp.TimeCollector zou het configuratiebestand zich bevinden in <installatiedirectory>/agents/org.eclipse.tptp.TimeCollector/agent.xml. De agentcontroller gebruikt de directorynaam om agents te identificeren die op naam worden aangevraagd. De gegevens van het configuratiebestand agent.xml zijn de metagegevens voor de agent.
Het bestand agent.xml van elke agent wordt slechts één keer door de agentcontroller gelezen, namelijk bij het starten. Als u deze bestanden dus wijzigt of nieuwe agentdirectory's toevoegt, moet u de agentcontroller dan ook opnieuw starten voordat de wijzigingen van kracht worden.
Element: Agent
Dit is het hoofdelement van het configuratiebestand. Het element bevat de metagegevens voor een agent. De metagegevens van een agent kunnen door een object worden opgevraagd en vervolgens waar nodig worden gebruikt. De hieronder vermelde subelementen worden door de agentcontroller gebruikt voor het starten en het besturen van de agent. Agentontwikkelaars kunnen aanvullende subelementen definiëren om extra informatie als metagegevens te retourneren. Metagegevens zijn nuttig voor een client om tijdens runtime vast te stellen welke agent voor een bepaalde taak moet worden gebruikt.
Subelementen: Interface
SingleInstance
Bound
MaxControllers
MaxObservers
ConfigFile
LaunchConfigurationKenmerken:
- Naam
- Deze tekenreekswaarde is de unieke naam van de agent. Deze waarde moet gelijk zijn aan de naam die door de agent wordt gebruikt wanneer deze zichzelf bij de agentcontroller registreert. Als deze waarden niet met elkaar overeenkomen, kunnen de resultaten voor aanvragen van een agent op naam verschillen, afhankelijk van of de agent al actief is.
Element: Interface
De tekenreekswaarde voor dit element is de naam van een interface die door de agent wordt ondersteund. Het element Agent kan nul of meer Interface-elementen bevatten. Een interface is een unieke naam voor een verzameling opdrachten die door een agent worden ondersteund.
- Gebruikt door: Agent
Element: SingleInstance
De waarde voor dit element kan 0 of 1 zijn. Met 0 (false) geeft u aan dat er meerdere instances van de agent tegelijkertijd kunnen worden uitgevoerd. Met 1 (true) geeft u aan dat er slechts één instance van de agent is toegestaan. Als u het element op 1 instelt, worden aanvragen voor nieuwe instances van deze agent door de agentcontroller genegeerd als er al één instance actief is.
Gebruikt door: Agent
Element: Bound
De waarde voor dit element kan 0 of 1 zijn. Met 0 (false) geeft u aan dat deze agent niet aan een toepassing is gekoppeld. Met 1 (true) geeft u aan dat de agent wel aan een toepassing is gekoppeld. Een gekoppelde agent kan alleen worden gestart door de toepassing waaraan de agent is gekoppeld. De agentcontroller zal een agent dan ook niet starten wanneer Bound op 1 is ingesteld.
Gebruikt door: Agent
Element: MaxControllers
De waarde voor dit element kan -1, 0 of een positief geheel getal zijn. -1 duidt aan dat er geen limiet is. Als het aantal aanvragen deze waarde overschrijdt, worden aanvragen voor controllerrechten voor de agent door de agentcontroller geweigerd. De ontwikkelaar van de agent definieert de rechten van een controller. Het is verstandig een beperking op te leggen voor het aantal objecten dat strijdige acties, zoals het starten en stoppen van gegevensverzameling, kan aanvragen.
Gebruikt door: Agent
Element: MaxObservers
De waarde voor dit element kan -1, 0 of een positief geheel getal zijn. -1 duidt aan dat er geen limiet is. Als het aantal aanvragen deze waarde overschrijdt, worden aanvragen voor waarnemingsrechten voor de agent door de agentcontroller geweigerd. De ontwikkelaar van de agent definieert de rechten van een waarnemer. Het is verstandig een beperking op te leggen voor het aantal objecten dat opvraagacties, zoals het aanbieden van gegevens die statisch zijn of verzameld worden (mogelijk vanwege een aanvraag door een controller), kan aanvragen.
Gebruikt door: Agent
Element: ConfigFile
De waarde voor dit element is het volledige pad en de bestandsnaam van een aanvullend configuratiebestand met dynamische configuratiegegevens die toegankelijk zijn voor de agent. Dit bestand is niet vereist. Het doeleinde en de inhoud ervan worden door de ontwikkelaar van de agent gedefinieerd. Meestal zal de agent bij het starten of op een ander moment de configuratiegegevens uit dit bestand ophalen.
Gebruikt door: Agent
Element: LaunchConfiguration
Hiermee wordt verwezen naar startconfiguratieparameters voor de agent.
Gebruikt door: Agent
Subelementen: launchInfo
Element: launchInfo
Hierin staan gegevens met betrekking tot het starten van een uitvoerbaar bestand.
Gebruikt door: LaunchConfiguration
Subelementen: Application
Element: Application
Het element Application definieert de gegevens voor het starten van een toepassing. De waarde van het kenmerk executable
kan een toepassing aanduiden met de aliasnaam (zie het element ApplicationAliases in serviceconfig.xml) of het pad naar het
uitvoerbare bestand dat moet worden gestart. De waarde wordt eerst vergeleken met de lijst van aliassen die tijdens het starten van de agentcontroller uit serviceconfig.xml zijn opgehaald. Als er geen treffer wordt gevonden, worden de startgegevens uit het element Application onbewerkt gehanteerd. Wordt er wel een treffer gevonden, dan worden de startgegevens voor de alias samen met de hier gedefinieerde gegevens gehanteerd, zoals hieronder is beschreven:
Gebruikt door:
LaunchConfiguration
Subelementen: Variable
Parameter
Kenmerken:
- executable
Deze tekenreekswaarde is de naam van de toepassing die moet worden gestart. De waarde kan een aliasnaam zijn of het pad naar het uitvoerbare bestand dat moet worden gestart. Als de waarde een alias is, wordt de naam van het uitvoerbare bestand vervangen door het pad in de alias.
- location
(Optioneel) Deze tekenreekswaarde geeft de directory aan van waaruit het uitvoerbare bestand moet worden gestart. Als u niets opgeeft en het uitvoerbare bestand niet met een alias overeenkomt, wordt de toepassing gestart vanuit de directory waarin de agentcontroller zich bevindt. Als u niets opgeeft en het uitvoerbare bestand wél met een alias overeenkomt, wordt de locatie van de alias gebruikt.
Element: Variable
Het element Variable duidt een omgevingsvariabele aan en geeft aan waar de variabele in de bestaande omgeving moet worden geplaatst. Als de variabele in het element Application voorkomt, wordt de omgeving gewijzigd die tijdens het starten van de toepassing wordt gebruikt. Het element Application kan nul of meer Variable-elementen bevatten. Als voor het kenmerk executable van het element Application een alias is opgegeven, worden de omgevingsvariabelen van de alias op de standaardomgeving toegepast en worden vervolgens de hier gedefinieerde omgevingsvariabelen toegepast.
Gebruikt door: Application
Kenmerken:
- name
Deze tekenreekswaarde geeft de naam van de omgevingsvariabele aan.
- value
Deze tekenreekswaarde geeft de waarde van de omgevingsvariabele aan.
- position
(Optioneel) Deze tekenreekswaarde kan "append" (achteraan toevoegen), "prepend" (vooraan toevoegen) of "replace" (vervangen) zijn en geeft aan waar de omgevingsvariabele ten opzichte van de huidige omgeving moet worden geplaatst. Als u niets opgeeft, wordt de variabele achter aan de omgeving toegevoegd.
Element: Parameter
Het element Parameter is een opdrachtregelargument dat tijdens het starten aan de toepassing moet worden doorgegeven. Het element Application kan nul of meer Parameter-elementen bevatten. Als voor het kenmerk executable van het element Application een alias is opgegeven, worden de opdrachtregelargumenten van de alias gebruikt en worden vervolgens de hier gedefinieerde opdrachtregelargumenten toegepast.
Gebruikt door: Application
Kenmerken:
- value
Deze tekenreekswaarde geeft een opdrachtregelargument aan.
- position
(Optioneel) Deze tekenreekswaarde kan "append" (achteraan toevoegen), "prepend" (vooraan toevoegen) of "replace" (vervangen) zijn en geeft aan waar dit argument ten opzichte van de huidige opdrachtregelargumenten moet worden geplaatst. Als u niets opgeeft, wordt het argument achter aan de opdrachtregel toegevoegd.
<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>
Verwante onderwerpen
Overzicht van de configuratie van agents en agentcontrollers
Copyright (C) 2005, 2006 Intel Corporation.