pluginconfig.xml 文件

目录

 

注意

在本文档中,当引用文件和目录位置时,<install-home> 是指代理控制器软件包的解压缩目录。

简介

pluginconfig.xml 文件在 <install-home>\plugins\<plugin-name>\config 目录中。此文件用于根据所捆绑的各个应用程序的需求来扩展 serviceconfig.xml 中定义的全局环境和应用程序别名。扩展 serviceconfig.xml 中定义的环境设置时,会对代理控制器启动的所有应用程序(包括代理程序)都产生影响,这是因为它们全都继承该环境。这样,“插件”就能够使它的应用程序被代理控制器启动的其他进程找到(例如,通过将它的路径添加到 CLASSPATH 环境变量中)。如果已将代理控制器配置为只启动应用程序别名列表中的服务,那么,通过扩展此列表,就可以启动新的应用程序。

因此,pluginconfig.xml 提供了一种机制,使您能够对代理控制器基本安装版的可选组件进行打包。由于不会修改 serviceconfig.xml 文件本身,所以除去添加件也一样容易。 

代理程序可能同时需要 pluginconfig.xmlagent.xml。如果要让新代理控制器查找可用的代理程序(即,能够发现该代理程序),则需要使用 agent.xml 文件来定义代理应用程序。如果代理程序需要扩展 serviceconfig.xml 环境或别名列表,则 pluginconfig.xml 是必需的。在将来的发行版中,将使用 agent.xml 文件来代替 pluginconfig.xml

注意

此处使用的术语“插件”仅仅是不精确地引用 Eclipse 插件。使用此术语的原因是最初确实使用的是插件。但现在使用此术语并不恰当,这是因为此配置文件可以引用任何应用程序,而不必将该应用程序打包成适合于安装到 Eclipse 工作台的插件。

pluginconfig.xml 文件由下列主要部分组成:

 

插件配置

 

pluginconfig.xml 文件中包含的元素层次结构如下所示。在同一层显示的元素的顺序并不重要。层次结构中的超链接将链接到元素和属性一节中的正式元素描述。


    PluginConfiguration
        AgentControllerEnvironment
            Variable
        Option
        Application
            Variable
            Parameter
        Agent
            Option

       

元素和属性

 

元素:PluginConfiguration
这是插件配置的根元素。只允许 AgentControllerEnvironment 出现一次。所有其他元素(Option、Application 和 Agent)都可以出现多次。可以省略任何子元素。

子元素:     AgentControllerEnvironment

                            Option
                            Application
                            Agent
                           
属性:

requires
(可选)此字符串值是此配置所依赖的插件名的逗号分隔列表。对于 TPTP 4.0 来说,对插件名添加了版本标识后缀。此后缀由下划线字符以及后跟的发行版版本号组成。例如:org.eclipse.tptp.platform.agentcontroller_4.0.0。要确保依赖于前发行版提供的插件(不带版本标识后缀的插件)的应用程序的插件兼容性,您可以选择对“requires”属性指定不带版本标识的插件名。在这种情况下,代理控制器的配置装入器将首先尝试查找包含版本标识后缀的完整插件名。如果不成功的话,配置装入器将会接着搜索不包含版本标识后缀的插件名。如果有多个同名的插件,则将使用操作系统返回的第一个插件名。

元素:AgentControllerEnvironment
AgentControllerEnvironment 元素包含一个或多个 Variable 元素,这些 Variable 元素对 serviceconfig.xml 中定义的全局环境变量进行扩展,它们将成为启动所有应用程序时使用的环境的组成部分。


使用者:PluginConfiguration

子元素:    Variable

 

元素:Variable

这个 Variable 元素定义了一个环境变量。此元素还定义了应该如何在现有环境中定位该变量,以便为所启动的所有应用程序和代理程序构造新的缺省环境。可以为 AgentControllerEnvironment 定义这些元素中的零个或多个。

使用者:AgentControllerEnvironment

属性:

name
此字符串值指定环境变量的名称。
value
此字符串值指定环境变量的值。
position
(可选)此字符串值是“append”、“prepend”或“replace”,它指示此环境相对于现有缺省环境的位置。

元素:Option
作为 PluginConfiguration 中顶级元素的 Option 用来指定任意的配置数据,此数据将传递给每个向代理控制器注册其自身的代理程序。此信息包括在为每个代理程序返回给客户机的属性信息中。代理程序可以其认为适当的方式解释(或不解释)此信息。Option 信息将仅提供给使用代理控制器的原始 API(向后兼容性层)的代理程序。要使用新 API 来向代理程序提供配置信息,请使用 agent.xml 配置文件。

使用者:Agent

属性:

name
此字符串值指定选项的名称空间。
type
此字符串值指定选项的名称。
value
此字符串指定选项的值。
元素:Application
Application 元素定义或扩展应用程序的别名和启动信息。它可以包含仅当此特定应用程序启动时才对其可视的环境设置。此应用程序别名将添加到 serviceconfig.xml 中的 ApplicationAliases 元素定义的列表中。


使用者:PluginConfiguration

子元素:    Variable

                            Parameter

属性:

executable
此字符串值指定 path 属性中指定的应用程序可执行文件的别名。客户机必须使用此名称来标识此应用程序。如果还指定了 extends 属性,则此处指定的名称应该与先前定义的别名匹配。 
path
此字符串值指定要启动的应用程序的完整路径名。在启动应用程序可执行文件时,此属性用于替换别名。
如果指定了 extends 属性,则将忽略此属性。 
location
(可选)此字符串值指定从中启动可执行文件的目录。当该可执行文件运行时,有时将此目录称为工作目录。
extends
(可选)此字符串值指定先前定义的应用程序别名的配置名。但是,不支持配置名,因此应该将此属性的值设置为“default”。如果指定了 extends(不必考虑值),则表示此 Application 中包含的信息应该对匹配的应用程序别名中先前定义的启动信息进行扩展。不允许更改 path 值(即所启动的可执行文件)。如果找不到可执行文件名的匹配项,则此 Application 元素不起作用。

元素:Variable
这个 Variable 元素定义了一个环境变量以及启动应用程序时该环境变量在现有环境应该所处的位置。可以为 Application 定义这些元素中的零个或多个。

使用者:Application

属性:

name
此字符串值指定环境变量的名称。
value
此字符串值指定环境变量的值。
position
(可选)此字符串值是“append”、“prepend”或“replace”,它指示此环境相对于缺省环境的位置。

元素:Parameter

Parameter 元素定义启动应用程序时要指定的命令行参数。可以为 Application 定义这些元素中的零个或多个。

使用者:Application

属性:

value
此字符串值指定命令行参数。
position
(可选)此字符串值是“append”、“prepend”或“replace”,它指示此参数相对于现有命令行参数的位置。

元素:Agent
提供特定代理程序的配置信息。仅供使用了代理控制器的原始 API(向后兼容性层)的代理程序使用。要使用新 API 来向代理程序提供配置信息,请使用 agent.xml 配置文件。

使用者:PluginConfiguration

子元素:     Option

属性:

name
此字符串值指定应该应用此配置信息的代理程序的名称。
type
(可选)此字符串值指定代理程序的类型。
dataChannelSize
(可选)此字符串值指定要为进程间通信分配的共享内存量。此值是带有后缀 M 或 K(分别表示兆字节或千字节)的正整数,也可以不带后缀(表示字节)。示例值:“16M”、“8K”或“16000”。
logFile
(可选)此字符串指定文件的标准路径名。如果指定了此属性,则将把正常请求下通过数据通道传输的数据改为写入此文件。
client
(可选)此字符串指定此代理程序是否与客户机进行交互。可能的值是“DYNAMIC”或“HEADLESS”。HEADLESS 表示没有相关联的客户机。缺省值是 DYNAMIC。
extends
(可选)此字符串值指定先前定义的代理程序的配置名。但是,不支持配置名,因此应该将此属性的值设置为“default”。如果指定了 extends(不必考虑值),则表示此 Agent 中包含的信息应该对匹配的 Agent 元素中先前定义的配置信息进行扩展。此属性用来对特定代理程序的相关 Option 列表进行扩充。

元素:Option
Agent 元素中的 Option 子元素用来指定任意的配置数据。当代理程序向向代理控制器注册其自身时,此数据将传递给该代理程序。代理程序可以其认为适当的方式解释(或不解释)此信息。

使用者:Agent

属性:

name
用于指定选项名的任意字符串(即名称空间)
type
用于指定选项类型名的任意字符串(即选项名)
value
选项的任意字符串值

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>
 

相关参考

代理程序与代理控制器配置概述


Copyright (C) 2006 Intel Corporation.