Il file agent.xml

Nota

In questo documento, quando si fa riferimento a percorsi di file o directory, <home-installazione> rappresenta la directory in cui è stato decompresso il pacchetto dell'Agent Controller.

Introduzione

Il file di configurazione di avvio dell'agente (agent.xml) contiene le informazioni statiche che l'Agent Controller deve conoscere per avviare e gestire un agente. Le informazioni statiche includono quanto segue:

Il file agent.xml deve risiedere in una directory con il nome dell'agente stesso.  La directory con il nome dell'agente si deve trovare all'interno della directory specificata dall'elemento Agent nel file serviceconfig.xml. For example, an agent named org.eclipse.tptp.TimeCollector would have this configuration file located in <install-home>/agents/org.eclipse.tptp.TimeCollector/agent.xml. L'Agent Controller utilizza il nome della directory per identificare gli agenti richiesti in base al nome.  Le informazioni nel file di configurazione agent.xml sono i metadati di tale agente.

Tener presente che l'Agent Controller legge i file agent.xml per tutti gli agenti una sola volta, all'avvio.  Quindi, per rendere effettiva una modifica del contenuto di questi file, o un'aggiunta di nuove directory di agenti, è richiesto il riavvio di Agent Controller.

Elementi e attributi

Elemento: Agent
Questo è l'elemento principale del file di configurazione dell'agente. Definisce i metadati per un agente. Un oggetto può richiedere i metadati di un agente e poi utilizzare queste informazioni in base alle esigenze. Gli elementi secondari elencati di seguito sono utilizzati dall'Agent Controller per avviare e gestire l'agente.  Ulteriori elementi secondari possono essere definiti dagli sviluppatori degli agenti che hanno l'esigenza di restituire informazioni aggiuntive come metadati.  I metadati risultano utili ad un client che cerca di prendere decisioni runtime sull'agente da utilizzare per una particolare attività.

Elementi secondari:     Interface
                            SingleInstance
                            Bound
                            MaxControllers
                            MaxObservers
                            ConfigFile
                            LaunchConfiguration

Attributi:

Name
This string value is the unique name for the agent. Questo valore dovrebbe essere lo stesso nome utilizzato dall'agente quando si registra all'Agent Controller.  If these values differ, requests for an agent by name will have varying results depending on whether the agent is already running or not.

Element:Interface
Il valore stringa di questo elemento è il nome di un'interfaccia supportata da questo agente. Possono essere presenti zero o più elementi Interface in un elemento Agent.  Un'interfaccia è un nome univoco per una serie di comandi supportati da un agente.

Utilizzato da:       Agent

Element:SingleInstance
Il valore intero di questo elemento è 0 o 1.  0 (false) indica che questo agente può avere più istanze in esecuzione contemporaneamente. 1 (true) indica che è consentita una sola istanza di questo agente.  Se impostato su 1, l'Agent Controller rifiuterà richieste di nuove istanze di questo agente se un'istanza è già in esecuzione.

Utilizzato da:       Agent

Elemento: Bound
Il valore intero di questo elemento è 0 o 1.  0 (false) indica che questo agente non è collegato ad un'applicazione. 1 (true) indica che l'agente è collegato ad un'applicazione.  Un agente collegato ad un'applicazione può essere avviato solo da questa applicazione, pertanto, l'Agent Controller rifiuterà l'avvio di un agente il cui valore Bound è 1.

Utilizzato da:       Agent

Elemento: MaxControllers
Il valore intero di questo elemento è -1, 0 o un valore positivo. -1 indica "nessun limite". L'Agent Controller rifiuterà le richieste di autorizzazione di controllo per questo agente se il numero di richieste supera questo valore.  Le autorizzazioni di controllo sono definite dallo sviluppatore dell'agente. L'utilizzo previsto è una limitazione del numero di oggetti che possono richiedere azioni in conflitto, quali l'avvio e l'arresto della raccolta di dati.

Utilizzato da:       Agent

Elemento: MaxObservers
Il valore intero di questo elemento è -1, 0 o un valore positivo. -1 indica "nessun limite". L'Agent Controller rifiuterà le richieste di autorizzazione di osservatore per questo agente se il numero di richieste supera questo valore.  Le autorizzazioni di osservatore sono definite dallo sviluppatore dell'agente. L'utilizzo previsto è una limitazione del numero di oggetti che possono richiedere azioni di tipo interrogazione, quali la fornitura di dati statici o dati in fase di raccolta (ad esempio, per una richiesta del Controller).

Utilizzato da:       Agent

Elemento: ConfigFile
Il valore stringa di questo elemento specifica il percorso completo e il nome file di un file di configurazione aggiuntivo che contiene le informazioni di configurazione dinamiche accessibili all'agente.  Questo file è facoltativo, il suo scopo e il suo contenuto sono definiti dallo sviluppatore dell'agente. L'utilizzo previsto è che l'agente legga le proprie informazioni di configurazione da questo file all'avvio o in qualsiasi altro momento.

Utilizzato da:       Agent

Elemento: LaunchConfiguration
Identifica i parametri di configurazione di avvio per questo agente.

Utilizzato da:       Agent
                   
Elementi secondari:     launchInfo
 

Elemento: launchInfo
Incapsula le informazioni utilizzate all'avvio di un eseguibile.

Utilizzato da:       LaunchConfiguration

Elementi secondari:     Application

Elemento: Application
Questo elemento Application definisce le informazioni utilizzate all'avvio di un'applicazione.  Il suo valore di attributo executable può specificare un'applicazione con il suo nome alias (vedere l'elemento ApplicationAliases in serviceconfig.xml) o il nome percorso dell'eseguibile effettivo da avviare.  Il valore viene prima confrontato con un elenco di alias ottenuto da serviceconfig.xml all'avvio dell'Agent Controller.  Se non viene trovata una corrispondenza, le informazioni di avvio contenute nell'elemento Application sono utilizzate direttamente.  Se viene trovata una corrispondenza, le informazioni di avvio definite per l'alias sono utilizzate insieme alle informazioni definite qui, come descritto successivamente.

Utilizzato da:       LaunchConfiguration
                   
Elementi secondari:     Variable
                            Parameter                          

Attributi:

executable

This string value specifies the name of the application to be started. Può essere un nome alias o il nome percorso di un eseguibile effettivo da avviare.  If it is an alias name, the executable name is replaced with the path value specified in that alias.

location

(optional) This string value specifies the directory from which the executable is to be launched, sometimes referred to as the working directory for the executable while it is running. Se omesso e se l'eseguibile non corrisponde ad un alias, l'applicazione viene eseguita dalla directory in cui risiede l'Agent Controller.  If omitted and the executable does match an alias, the location specified for the alias is used.

Elemento: Variable
Questo elemento Variable definisce una variabile di ambiente e la sua posizione nell'ambiente esistente.  Se si trova in un elemento Application, modifica l'ambiente utilizzato all'avvio dell'applicazione.  Per un elemento Application possono essere definiti uno o più di questi elementi. Se l'attributo executable di Application specifica un alias, le impostazioni della variabile di ambiente dell'alias sono applicate all'ambiente predefinito e successivamente su di esse sono applicate le variabili qui definite.

Utilizzato da:     Application

Attributi:

name

This string value specifies the name of the environment variable.

value

This string value specifies the value of the environment variable.

position

(optional) This string value is one of "append", "prepend", or "replace", indicating where to place this environment relative to the current environment. If omitted, the variable is appended to the environment.

Elemento: Parameter
L'elemento Parameter definisce un argomento di riga comandi da fornire all'applicazione quando viene avviata. Per un elemento Application possono essere definiti uno o più di questi elementi. Se l'attributo executable di Application specifica un alias, sono utilizzati gli argomenti di riga comandi dell'alias e successivamente su di essi sono applicati gli argomenti di riga comandi qui definiti.

Utilizzato da:     Application

Attributi:

value

This string value specifies a command line argument.

position

(optional) This string value is one of  "append", "prepend", or "replace" indicating where to place this argument relative to the existing command line arguments. If omitted, the argument is appended to the command line.

Esempio di file agent.xml

<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>


Riferimenti correlati

Panoramica sulla configurazione di agenti e Agent Controller 


Copyright (C) 2005, 2006 Intel Corporation.