Het bestand pluginconfig.xml

Inhoud

 

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.

Inleiding

Het bestand pluginconfig.xml bevindt zich in de directory <installatiedirectory>\plugins\<plugin-name>\config. Het wordt gebruikt om de algemene omgeving en de toepassingsaliassen die zijn gedefinieerd in serviceconfig.xml uit te breiden al naar gelang de behoeften van afzonderlijk gebundelde toepassingen. Uitbreiding van de omgevingsinstellingen die zijn gedefinieerd in serviceconfig.xml is van invloed op alle toepassingen (inclusief agents) die door de agentcontroller worden gestart, omdat deze omgeving voor alle toepassingen wordt gebruikt. Hierdoor kunnen de toepassingen van een "plugin" worden gevonden door andere processen die door de agentcontroller worden gestart (bijvoorbeeld door het pad toe te voegen aan de omgevingsvariabele CLASSPATH). Uitbreiding van de lijst van toepassingsaliassen is de methode voor een nieuwe toepassing om te worden gestart als de agentcontroller zo is geconfigureerd dat alleen services in de lijst mogen worden gestart.

Het bestand pluginconfig.xml biedt dus een mogelijkheid voor het verpakken van optionele plugincomponenten voor de basisinstallatie van de agentcontroller. Omdat het bestand serviceconfig.xml zelf niet wordt gewijzigd, kunnen de plugins net zo makkelijk weer worden verwijderd. 

Voor agents kan zowel het bestand pluginconfig.xml als agent.xml vereist zijn. Het bestand agent.xml is vereist om een agenttoepassing te definiëren als u wilt dat de nieuwe agentcontroller in staat om te zoeken naar beschikbare agents (agents kan opsporen). Het bestand pluginconfig.xml is vereist als de agent de omgeving of lijst van aliassen in serviceconfig.xml moet uitbreiden. In een volgende release zal het bestand agent.xml niet meer worden gebruikt en worden vervangen door pluginconfig.xml.

Opmerking

De term "plugin" wordt hier gebruikt als losse verwijzing naar een Eclipse-plugin. Dit komt doordat in het begin daardwerkelijke plugins werden gebruikt. Maar tegenwoordig is dit een verkeerde benaming, aangezien in dit configuratiebestand kan worden verwezen naar elke toepassing, zonder dat deze hoeft te zijn verpakt als plugin die kan worden geïnstalleerd in de workbench van Eclipse.

Het bestand pluginconfig.xml bevat de volgende hoofdsegmenten:

 

Pluginconfiguratie

 

De hiërarchie van de elementen in het bestand pluginconfig.xml ziet u hieronder. De volgorde van elementen op hetzelfde niveau is niet belangrijk. De hyperlinks in de hiërarchie verwijzen naar de volledige elementbeschrijving in het gedeelte Elementen en kenmerken.


    PluginConfiguration
        AgentControllerEnvironment
            Variable
        Option
        Application
            Variable
            Parameter
        Agent
            Option

       

Elementen en kenmerken

 

Element: PluginConfiguration
Dit is het hoofdelement van de pluginconfiguratie. Er is slechts één van het element AgentControllerEnvironment toegestaan. Alle andere elementen (Option, Application, en Agent) mogen wel meerdere keren voorkomen. Ieder subelement mag ook worden weggelaten.

Subelementen:     AgentControllerEnvironment

                            Option
                            Application
                            Agent
                           
Kenmerken:

requires
(Optioneel) Deze tekenreekswaarde is een door komma's gescheiden lijst van pluginnamen waarvan deze configuratie afhankelijk is. Vanaf TPTP 4.0 is een achtervoegsel met het versie-ID toegevoegd aan de pluginnamen. Dit bestaat uit het liggende streepje gevolgd door het nummer van de versie. Bijvoorbeeld: org.eclipse.tptp.platform.agentcontroller_4.0.0. Om te zorgen voor plugincompatibiliteit voor toepassingen die afhankelijk zijn van de plugins van eerdere versies (plugins die geen achtervoegsel met het versie-ID hebben), kunt u de pluginnaam voor het kenmerk "requires" opgeven zonder versie-ID. In dit geval zal de configuratielader van de agentcontroller eerst proberen de volledige pluginnaam te vinden inclusief een achtervoegsel met het versie-ID. Als dit niet lukt, zoekt het configuratielader vervolgens naar de pluginnaam zonder het achtervoegsel met het versie-ID. Als er meerdere plugins met dezelfde naam worden aangetroffen , wordt de eerste pluginnaam gebruikt die door door het besturingssysteem is geretourneerd.

Element: AgentControllerEnvironment
Het element AgentControllerEnvironment bevat een of meer Variable-elementen in aanvulling op de algemene omgevingsvariabelen die in serviceconfig.xml zijn gedefinieerd. Deze worden opgenomen in de omgeving waarin alle toepassingen worden gestart.


Gebruikt door: PluginConfiguration

Subelementen:     Variable

 

Element: Variable

Het element Variable definieert een omgevingsvariabele en geeft aan hoe de variabele in de bestaande omgeving moet worden geplaatst om een standaardomgeving te creëren voor alle toepassingen en agents die worden gestart. Het element AgentControllerEnvironment kan nul of meer Variable-elementen bevatten.

Gebruikt door: AgentControllerEnvironment

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 deze omgeving environment ten opzichte van de bestaande standaardomgeving moet worden geplaatst.

Element: Option
Een Option-element als hoofdelement in PluginConfiguration wordt gebruikt om willekeurige configuratiegegevens op te geven die moeten worden doorgegeven aan elke agent die zichzelf bij de agentcontroller registreert. Deze gegevens worden opgenomen in de eigenschappengegevens die voor elke agent aan een client worden geretourneerd. De agent kan deze gegevens naar keuze al dan niet interpreteren. Option-gegevens worden alleen doorgegeven aan agents die gebruikmaken van de oorspronkelijke API (lagen voor compatibiliteit met eerdere versies) van de agentcontroller. Gebruik het configuratiebestand agent.xml om configuratiegegevens aan te leveren voor een agent die gebruikmaakt van de nieuwe API.

Gebruikt door: Agent

Kenmerken:

name
Deze tekenreekswaarden geeft de naamruimte voor de optie aan.
type
Deze tekenreekswaarden geeft de naam van de optie aan.
value
Deze tekenreekswaarden geeft de waarde van de optie aan.
Element: Application
Het element Application definieert of verstrekt een alias en startgegevens voor een toepassing. Hierin kunnen omgevingsinstellingen zijn opgenomen die alleen zichtbaar zijn voor de specifieke toepassing als die wordt gestart. Deze toepassingsalias wordt toegevoegd aan de lijst die is gedefinieerd in het element ApplicationAliases in serviceconfig.xml.


Gebruikt door: PluginConfiguration

Subelementen:     Variable

                            Parameter

Kenmerken:

executable
Deze tekenreekswaarde duidt de naam aan van de alias voor het uitvoerbare bestand van de toepassing dat in het kenmerk path is opgegeven. Clients moeten deze toepassing aanduiden met deze naam. Als het kenmerk extends ook is opgegeven, moet de hier opgegeven naam overeenkomen met een eerder gedefinieerde alias. 
path
Deze tekenreekswaarde geeft het volledige pad aan van de directory waarin de te starten toepassing zich bevindt. Dit kenmerk komt in de plaats van de aliasnaam bij het starten van het uitvoerbare bestand van de toepassing.
Dit kenmerk wordt genegeerd als het kenmerk extends is opgegeven. 
location
(optioneel) Deze tekenreekswaarde geeft de directory aan van waaruit het uitvoerbare bestand moet worden gestart. Wanneer het bestand wordt uitgevoerd, wordt deze directory ook wel de werkdirectory genoemd.
extends
(optioneel) Deze tekenreekswaarde geeft de configuratienaam aan voor een eerder gedefinieerde toepassingsalias. Configuratienamen worden echter niet ondersteund, dus de waarde van dit kenmerk moet worden ingesteld op "default". Als extends aanwezig is (ongeacht de waarde ervan), geeft dit aan dat de informatie in dit Application-element moet worden toegevoegd aan de startgegevens die eerder zijn gedefinieerd in de bijbehorende toepassingsalias. Het is niet toegestaan om de waarde van path (het uitvoerbare bestand dat wordt gestart) te wijzigen. Als er geen overeenkomst met de naam van het uitvoerbare bestand wordt gevonden, heeft dit Application-element geen effect.

Element: Variable
Het element Variable duidt een omgevingsvariabele aan en geeft aan waar de variabele in de bestaande omgeving moet worden geplaatst bij het starten van de toepassing. Het element Application kan nul of meer Parameter-elementen bevatten.

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 deze omgeving environment ten opzichte van de standaardomgeving moet worden geplaatst.

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.

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 bestaande opdrachtregelargumenten moet worden geplaatst.

Element: Agent
Dit element levert configuratiegegevens voor een bepaalde agent, en wordt alleen gebruikt door agents die gebruikmaken van de oorspronkelijke API (lagen voor compatibiliteit met eerdere versies) van de agentcontroller. Gebruik het configuratiebestand agent.xml om configuratiegegevens aan te leveren voor een agent die gebruikmaakt van de nieuwe API.

Gebruikt door: PluginConfiguration

Subelementen:     Option

Kenmerken:

name
Deze tekenreekswaarde duidt de naam aan van de agent waarop deze configuratiegegevens moet worden toegepast.
type
(optioneel) Deze tekenreekswaarde geeft het type agent aan.
dataChannelSize
(optioneel) Deze tekenreekswaarde geeft aan hoeveel gedeeld geheugen moet worden toegewezen voor communicatie tussen processen. Deze waarde wordt opgegeven als een positief geheel getal met het suffix M (megabytes), het suffix K (kilobytes) of als positief geheel getal zonder suffix (bytes). Voorbeeldwaarden: "16M", "8K" of "16000".
logFile
(optioneel) Deze tekenreekswaarde geeft het volledige pad van een bestand aan. Als deze waarde is opgegeven, worden de gegevens die normaal gesproken via het gegevenskanaal naar de client worden verzonden, in plaats daarvan naar dit bestand geschreven.
client
(optioneel) Deze tekenreekswaarde geeft aan of er sprake is van interactie tussen deze agent en een client. Mogelijke waarden zijn "DYNAMIC" en "HEADLESS". HEADLESS geeft aan dat er bijbehorende client is. De standaardwaarde is DYNAMIC.
extends
(optioneel) Deze tekenreekswaarde geeft de configuratienaam aan van een eerder gedefinieerde agent. Configuratienamen worden echter niet ondersteund, dus de waarde van dit kenmerk moet worden ingesteld op "default". Als extends aanwezig is (ongeacht de waarde ervan), geeft dit aan dat de informatie in dit Agent-element moet worden toegevoegd aan de configuratiegegevens die eerder zijn gedefinieerd in het corresponderende Agent-element. Dit element wordt gebruikt als uitbreiding voor de lijst met Option-elementen voor een bepaalde agent.

Element: Option
Een Option-element als subelement binnen een Agent-element wordt gebruikt om willekeurige configuratiegegevens op te geven die worden doorgegeven aan de agent wanneer deze zich registreert bij de agentcontroller. De agent kan deze gegevens naar keuze al dan niet interpreteren.

Gebruikt door: Agent

Kenmerken:

name
Een willekeurige tekenreeks die fungeert als naam van de optie (naamruimte)
type
Een willekeurige tekenreeks die fungeert als type van de optie (optienaam)
waarde
Een willekeurige tekenreekswaarde voor de optie

Voorbeeld van het bestand pluginconfig.xml

 

<PluginConfiguration requires="org.eclipse.tptp.platform.collection.framework">
    <AgentControllerEnvironment>
        <Variable name="CLASSPATH_MY_AGENTS" position="append"
        value="%PLUGINS_HOME%\org.eclipse.tptp.myagents\lib\coreagent.jar" />
    </AgentControllerEnvironment>

    <Application executable="MyAgent" location="%SYS_TEMP_DIR%" path="%JAVA_PATH%">

        <Variable name="CLASSPATH" position="append"
          value="%PLUGINS_HOME%\org.eclipse.tptp.myagents\jmx\lib\jmxagent.jar" />  
        <Variable name="CLASSPATH" position="append" value="%CLASSPATH_MY_AGENTS%" />  
        <Parameter position="append" value="-Dapp_home=%MY_HOME%" />  
        <Parameter position="append" value="-DagentXML=%PLUGINS_HOME%
          \org.eclipse.tptp.myagents\jmx\agentXML\MyAgent.xml" />
    </Application>

    <Option name="org.eclipse.tptp.Myagents" type="version" value="2.0"/> 

</PluginConfiguration>
 

Verwante onderwerpen

Overzicht van de configuratie van agents en agentcontrollers


Copyright (C) 2006 Intel Corporation.