O Arquivo pluginconfig.xml

Conteúdo

 

Nota

Ao fazer referência a locais de arquivo e diretório neste documento, <install-home> é o diretórioem que o pacote do Agent Controller foi descompactado.

Introdução

O arquivo pluginconfig.xml resides em <install-home>\plugins\<plugin-name>\config.  É o mecanismo para estender o ambiente global e os aliases de aplicativo definidos em serviceconfig.xml de acordo com as necessidades de aplicativos de pacotes configuráveis individuais.  Estender as configurações do ambiente definidas em serviceconfig.xml causa um impacto em todos os aplicativos (incluindo agentes) ativados pelo Agent Controller, uma vez que todos herdam esse ambiente.  Isso permite a um "plugin" tornar seus aplicativos localizáveis por outros processos iniciados pelo Agent Controller (por ex., incluindo seu caminho na variável de ambiente CLASSPATH). Estender a lista de aliases de aplicativos é o meio para que um novo aplicativo seja ativado se o Agent Controller estiver configurado para restringir seus serviços de ativação a apenas aqueles da lista.

Desse modo, pluginconfig.xml fornece um mecanismo para empacotar componentes complementares que são opcionais para a instalação básica do Agent Controller.  Uma vez que o próprio arquivo serviceconfig.xml não é modificado, a remoção dos complementos é igualmente fácil.  

Os agentes podem requerer um pluginconfig.xml e um agent.xml. O arquivo agent.xml é requerido para definir um aplicativo agente se você quiser o novo agent controller ao procurar agentes disponíveis (isto é, conseguir descobri-lo).  O pluginconfig.xml será requerido se o agente precisar estender o ambiente serviceconfig.xml ou a lista de aliases. O uso do arquivo agent.xml substituirá o uso do pluginconfig.xml em um release futuro.

Nota

O termo "plugin" utilizado aqui é apenas uma vaga referência a um plug-in do Eclipse.  Ele surgiu porque os plug-ins reais foram utilizados inicialmente.  Mas agora ele é um termo incorreto, uma vez que esse arquivo de configuração pode referir-se a qualquer aplicativo sem ser agrupado como um plug-in adequado para instalação no ambiente de trabalho do Eclipse.

O arquivo pluginconfig.xml contém os principais segmentos a seguir:

 

Configuração de Plug-In

 

A hierarquia dos elementos contidos no arquivo pluginconfig.xml é mostrada a seguir. A ordem dos elementos mostrados no mesmo nível não é importante. Hyperlinks na hierarquia estão vinculados à descrição formal do elemento na seção Elementos e Atributos.


    PluginConfiguration
        AgentControllerEnvironment
            Variable
        Option
        Application
            Variable
            Parameter
        Agent
            Option

       

Elementos e Atributos

 

Elemento: PluginConfiguration
Esse é o elemento raiz da configuração de plug-in. Apenas uma ocorrência de  AgentControllerEnvironment é permitida. Os outros elementos (Option, Application e Agent) permitem várias ocorrências.  Qualquer um dos subelementos pode ser omitido.

Subelementos:     AgentControllerEnvironment

                            Option
                            Application
                            Agent
                           
Atributos:

requires
(opcional) Esse valor de cadeia é uma lista separada por vírgula de nome(s) de plug-in(s) do(s) qual(is) essa configuração depende. A partir do TPTP 4.0, um sufixo de identificador de versão foi incluído nos nomes de plug-in. Consiste em um caractere de sublinhado seguido pelo número da versão para o release. Exemplo: org.eclipse.tptp.platform.agentcontroller_4.0.0. Para assegurar compatibilidade do plug-in para aplicativos que possuem dependências em plug-ins de releases anteriores (plug-ins que não possuem um sufixo de identificador de versão), você tem a opção de especificar o nome do plug-in do atributo "requires", excluindo o identificador de versão. Nesse caso, o loader de configuração do Agent Controller primeiro tentará localizar o nome completo do plug-in, incluindo o sufixo de identificador de versão. Se malsucedido, o loader de configuração procurará o nome do plug-in excluindo o sufixo de identificador de versão. Se houver mais de um plug-in com o mesmo nome, o primeiro nome do plug-in retornado pelo sistema operacional será utilizado.

Elemento: AgentControllerEnvironment
Esse elemento inclui um ou mais elementos Variable que estenderão as variáveis de ambiente globais definidas em serviceconfig.xml.  Elas se tornarão parte do ambiente utilizado na ativação de todos os aplicativos.


Utilizado por: PluginConfiguration

Subelementos:     Variable

 

Elemento: Variable

Esse elemento define uma variável de ambiente e como deve ser posicionada no ambiente existente para formar o novo ambiente padrão para todos os aplicativos e agentes ativados. Pode haver zero ou mais desses elementos definidos para o AgentControllerEnvironment.

Utilizado por: AgentControllerEnvironment

Atributos:

name
Esse valor de cadeia especifica o nome da variável de ambiente.
value
Esse valor de cadeia especifica o valor da variável de ambiente.
position
(opcional) Esse valor de cadeia é um de "append", "prepend" ou "replace", indicando onde colocar esse ambiente em relação ao ambiente padrão existente.

Elemento: Option
Option como um elemento inicial em PluginConfiguration é utilizado para especificar dados de configuração arbitrários que serão transmitidos a todos os agentes que se registrarem com o Agent Controller. Essas informações são incluídas nas informações de propriedade retornadas pelos agentes, para um cliente. O agente pode interpretá-las (ou não) quando parecerem ajustadas. As informações de Option são fornecidas apenas aos agentes que estejam utilizando a API original (camadas de retrocompatibilidade) do Agent Controller. Utilize o arquivo de configuração agent.xml para fornecer informações de configuração a um agente utilizando a nova API.

Utilizado por: Agent

Atributos:

name
Esse valor de cadeia especifica o espaço de nomes da opção.
type
Esse valor de cadeia especifica o nome da opção.
value
Essa cadeia especifica o valor da opção.
Elemento: Application
Esse elemento define ou estende um nome alias e as informações de ativação de um aplicativo. Ele pode incluir configurações de ambiente visíveis apenas neste aplicativo específico ao ser ativado.  Esse alias de aplicativo é incluído na lista definida no elemento ApplicationAliases em serviceconfig.xml.


Utilizado por: PluginConfiguration

Subelementos:     Variable

                            Parameter

Atributos:

executable
Esse valor de cadeia especifica o nome alias do executável do aplicativo especificado no atributo de caminho. Os clientes devem utilizar esse nome para identificar esse aplicativo.  Se o atributo extends também for especificado, o nome fornecido aqui deverá corresponder a um alias definido anteriormente. 
path
Esse valor de cadeia especifica o nome de caminho completo do aplicativo a ser ativado. Ele é utilizado no lugar do nome alias ao ativar o executável do aplicativo.
O atributo será ignorado se o atributo extends for especificado. 
location
(opcional) Esse valor de cadeia especifica o diretório a partir do qual o executável deve ser ativado; é referido, às vezes, como o diretório de trabalho do executável enquanto ele está em execução.
extends
(opcional) Esse valor de cadeia especifica o nome da configuração para um alias de aplicativo definido anteriormente. No entanto, os nomes de configurações não são suportados, portanto, o valor desse atributo deve ser definido como "padrão". Se extends estiver presente (independentemente do valor), isso indica que as informações contidas nesse Application devem estender as informações de ativação definidas anteriormente no alias de aplicativo correspondente. Não é permitido alterar o valor path (isto é, o executável que está sendo ativado). Se não for localizada nenhuma correspondência para o nome do executável, esse elemento Application não terá efeito.

Elemento: Variable
Esse elemento define uma variável de ambiente e como posicioná-la no ambiente existente quando o aplicativo é ativado. Pode haver zero ou mais desses elementos definidos para um Aplicativo.

Utilizado por: Application

Atributos:

nome
Esse valor de cadeia especifica o nome da variável de ambiente.
value
Esse valor de cadeia especifica o valor da variável de ambiente.
position
(opcional) Esse valor de cadeia é um de "append", "prepend" ou "replace", indicando onde colocar esse ambiente em relação ao ambiente padrão.

Elemento: Parameter

Esse elemento define um argumento de linha de comando a ser fornecido ao aplicativo quando ativado. Pode haver zero ou mais desses elementos definidos para um Aplicativo.

Utilizado por: Application

Atributos:

value
Esse valor de cadeia especifica um argumento de linha de comandos.
position
(opcional) Esse valor de cadeia é um de "append", "prepend" ou "replace", indicando onde colocar esse argumento em relação aos argumentos de linha de comandos existentes.

Elemento: Agent
Fornece informações de configuração para um determinado agente. Utilizado apenas por agentes que estejam utilizando a API original  (camadas de retrocompatibilidade) do Agent Controller. Utilize o arquivo de configuração agent.xml para fornecer informações de configuração a um agente utilizando a nova API.

Utilizado por: PluginConfiguration

Subelementos:     Option

Atributos:

name
Esse valor de cadeia especifica o nome do agente ao qual essas informações de configuração devem ser aplicadas.
type
(opcional) Esse valor de cadeia especifica um tipo de agente.
dataChannelSize
(opcional) Esse valor de cadeia especifica a quantidade de memória compartilhada a ser alocada para comunicação entre os processos. Os valores tomam a forma de inteiros positivos com o sufixo M ou K para indicar Megabyte ou Kilobytes, respectivamente, ou sem sufixo, para indicar bytes. Valores de exemplo: "16 M", "8 K" ou "16000".
logFile
(opcional) Essa cadeia especifica um nome de caminho completo de um arquivo. Se especificado, os dados que, normalmente, passariam pelo canal de dados para o cliente, serão gravados neste arquivo.
client
(opcional) Essa cadeia especifica se esse agente está interagindo com um cliente.   Os valores possíveis são "DYNAMIC" ou "HEADLESS".   HEADLESS indica que não há cliente associado.  O padrão é DYNAMIC.
extends
(opcional) Esse valor de cadeia especifica o nome da configuração para um Agente definido anteriormente. No entanto, os nomes de configurações não são suportados, portanto, o valor desse atributo deve ser definido como "padrão". Se extends estiver presente (independentemente do valor), isso indica que as informações contidas nesse Agent devem estender as informações de configuração definidas anteriormente no elemento Agent correspondente. Utilizado para expandir a lista de Opções associadas a um determinado agente.

Elemento: Option
Um subelemento Option em um elemento Agent  é utilizado para especificar dados de configuração arbitrários que serão transmitidos para o agente ao registrar-se com o Agent Controller.  O agente pode interpretar essas informações (ou não) quando parecerem ajustadas.

Utilizado por: Agent

Atributos:

name
uma cadeia arbitrária que dá nome à opção (isto é, espaço de nomes)
type
uma cadeia arbitrária que dá nome ao tipo da opção (isto é, nome da opção)
value
um valor de cadeia arbitrária para a opção

Exemplo de Arquivo 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>
 

Referência Relacionada

Visão Geral da Configuração do Agente e do Agent Controller


Direitos Autorais (C) 2006 Intel Corporation.