Poznámka
Při odkazování na umístění souborů a adresářů v tomto dokumentu představuje <install-home> adresář, kam byl rozbalen balíček Řadiče agentů.
Konfigurační soubor spuštění agenta (agent.xml) obsahuje statické informace, které Řadič agentů potřebuje znát ke spuštění a správě agenta. Tyto statické informace zahrnují následující údaje:
Soubor agent.xml musí být umístěn v adresáři pojmenovaném po vlastním agentu. Tento adresář musí být umístěn v adresáři určeném prvkem Agent v souboru serviceconfig.xml. Například agent pojmenovaný org.eclipse.tptp.TimeCollector bude mít svůj konfigurační soubor umístěný v adresáři <install-home>/agents/org.eclipse.tptp.TimeCollector/agent.xml. Řadič agentů používá název adresáře k identifikaci agentů, které jsou volány názvem. Informace v konfiguračním souboru agent.xml jsou metadata pro daného agenta.
Povšimněte si, že Řadič agentů čte soubory agent.xml pro všechny agenty jen jednou, v okamžiku svého spuštění. Z toho vyplývá, že po úpravě těchto souborů nebo přidání nových adresářů agentů je nutno restartovat Řadič agentů, aby se provedené změny mohly projevit.
Prvek: Agent
Toto je kořenový prvek konfiguračního souboru agenta. Definuje metadata pro agenta. Objekt může požadovat metadata agenta a potom tyto informace využívat podle potřeby. Dílčí prvky uvedené níže se používají Řadičem agentů ke spouštění a správě agenta. Další dílčí prvky mohou definovat vývojáři agenta, kteří potřebují vrátit další informace jako metadata. Metadata jsou užitečná pro klienta, který se pokouší přijmout rozhodnutí za běhu o tom, kterého agenta použít pro konkrétní úlohu.
Dílčí prvky: Interface
SingleInstance
Bound
MaxControllers
MaxObservers
ConfigFile
LaunchConfigurationAtributy:
- Name
- Tato hodnota typu řetězec je jedinečným názvem agenta. Předpokládá se, že tato hodnota bude stejná, jako název použitý agentem v okamžiku jeho registrace u Řadiče agentů. Pokud se tyto hodnoty liší, bude požadavek na agenta podle názvu vracet různé výsledky podle toho, zda je agent již spuštěn nebo ne.
Prvek:Interface
Hodnota tohoto prvku je typu řetězec a je názvem rozhraní podporovaného daným agentem. V prvku Agent může být nulový nebo vyšší počet prvků Interface.
Rozhraní je jedinečný název pro množinu příkazů podporovaných určitým agentem.
- Použito v: Agent
Prvek:SingleInstance
Celočíselná hodnota tohoto prvku může být 0 nebo 1. Hodnota 0 (false) indikuje, že tento agent může mít více současně spuštěných instancí. Hodnota 1 (true) indikuje, že je povolena jen jediná instance tohoto agenta. Je-li hodnota nastavena na 1, odmítá Řadič agentů požadavky na novou instanci tohoto agenta, pokud je už jedna instance spuštěna.
Použito v: Agent
Prvek: Bound
Celočíselná hodnota tohoto prvku může být 0 nebo 1. Hodnota 0 (false) indikuje, že tento Agent není svázán s žádnou aplikací. Hodnota 1 (true) indikuje, že je tento agent svázán s nějakou aplikací. Agent, který je svázán s nějakou aplikací, může být spuštěn jedině touto aplikací. Řadič agentů proto odmítá spustit agenta, je-li jeho hodnota Bound rovna 1.
Použito v: Agent
Prvek: MaxControllers
Celočíselná hodnota tohoto prvku může být -1, 0 nebo kladné číslo. Hodnota -1
znamená "bez limitu". Řadič agentů odmítne požadavky na práva řadiče k tomuto agentu, pokud počet těchto požadavků překročí tuto hodnotu. Práva řadiče definuje vývojář agenta. Toho lze využít k omezení počtu objektů, které mohou požadovat konfliktní akce, jako je spouštění a zastavování procesu shromažďování dat.
Použito v: Agent
Prvek: MaxObservers
Celočíselná hodnota tohoto prvku může být -1, 0 nebo kladné číslo. Hodnota -1
znamená "bez limitu". Řadič agentů odmítne požadavky na práva pozorovatele k tomuto agentu, pokud počet těchto požadavků překročí tuto hodnotu. Práva pozorovatele definuje vývojář agenta. Toho lze využít k omezení počtu objektů, které mohou požadovat dotazovací akce, jako například poskytování dat, která jsou statická nebo shromažďovaná (obvykle na základě požadavku řadiče).
Použito v: Agent
Prvek: ConfigFile
Hodnota tohoto prvku je typu řetězec a určuje úplnou cestu a název dalšího konfiguračního souboru obsahujícího dynamické konfigurační informace dostupné agentu. Toto je volitelný soubor, jehož účel a obsah definuje vývojář. Agent tak může mít možnost číst z tohoto souboru své konfigurační informace při spuštění nebo kdykoli jindy.
Použito v: Agent
Prvek:
LaunchConfiguration
Určuje konfigurační parametry spuštění pro tohoto agenta.
Použito v: Agent
Dílčí prvky: launchInfo
Prvek:
launchInfo
Zapouzdřuje informace užívané při spouštění spustitelného souboru.
Použito v: LaunchConfiguration
Dílčí prvky: Application
Prvek: Application
Tento prvek Application definuje informace užívané při spouštění aplikace. Hodnota jeho atributu executable může určovat aplikaci jejím zástupným jménem (viz prvek ApplicationAliases v souboru serviceconfig.xml) nebo cestou skutečného spustitelného souboru. Hodnota se nejdříve porovnává se seznamem aliasů získaným ze souboru serviceconfig.xml při spuštění Řadiče agentů. Není-li nalezena shoda, použijí se informace pro spuštění obsažené v prvku Application tak, jak jsou. Pokud je nalezena shoda, informace pro spuštění definované pro tento alias se použijí ve spojení se zde definovanými informacemi, jak je popsáno níže.
Použito v: LaunchConfiguration
Dílčí prvky: Variable
Parameter
Atributy:
- executable
Tato hodnota typu řetězec určuje název aplikace, která se má spustit. Může to být buď zástupné jméno, nebo název cesty spustitelného souboru, který se má spustit. Je-li to zástupné jméno, je název spustitelného souboru nahrazen hodnotou cesty specifikovanou v tomto zástupném jménu.
- location
(volitelné) Tato hodnota typu řetězec určuje adresář, z něhož má být spuštěn spustitelný soubor; někdy je označovaný jako pracovní adresář pro právě spuštěný spustitelný soubor. Je-li atribut vynechán a spustitelný soubor se neshoduje s žádným aliasem, spustí se aplikace z adresáře, v němž se nachází Řadič agentů. Je-li vynechán a spustitelný soubor se shoduje s nějakým aliasem, použije se umístění uvedené pro daný alias.
Prvek: Variable
Tento prvek Variable definuje proměnnou prostředí a to, jak má být umístěna ve stávajícím prostředí. Je-li umístěna v prvku Application, upravuje prostředí použité při spuštění aplikace. Těchto prvků může být pro aplikaci definováno libovolné množství, nebo nemusí být definován žádný. Pokud atribut executable dané aplikace určuje alias, nastavení proměnných prostředí tohoto aliasu se aplikuje na výchozí prostředí a potom se na tato nastavení aplikují zde definované proměnné prostředí.
Použito v: Application
Atributy:
- name
Tato hodnota typu řetězec určuje název proměnné prostředí.
- value
Tato hodnota typu řetězec určuje hodnotu proměnné prostředí.
- position
(volitelné) Touto hodnotou typu řetězec je jedna z hodnot "append", "prepend" nebo "replace" indikující, kam umístit dané prostředí vzhledem k stávajícímu prostředí. Je-li vynechána, proměnná se připojí k prostředí.
Prvek: Parameter
Prvek Parameter definuje argument příkazového řádku, který se předá aplikaci při jejím spuštění. Těchto prvků může být pro aplikaci definováno libovolně mnoho, nebo nemusí být definován žádný. Pokud atribut
executable aplikace určuje alias, potom se použijí argumenty příkazového řádku aliasu a následně se na ně aplikují zde definované argumenty příkazového řádku.
Použito v: Application
Atributy:
- value
Tato hodnota typu řetězec určuje argument příkazového řádku.
- position
(volitelné) Touto hodnotou typu řetězec je jedna z hodnot "append", "prepend" nebo "replace" indikující, kam umístit tento argument vzhledem ke stávajícím argumentům příkazového řádku. Je-li vynechána, je argument připojen k příkazovému řádku.
<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>
Související odkazy
Přehled konfigurace agenta a Řadiče agentů
Copyright (C) 2005, 2006 Intel Corporation.