上一主题: 组件集描述符语法下一主题: 输入和输出子实体


概览

组件集描述符包含一个组件集实体,它定义包括多个组件(可以是简单组件,也可以是其他组件集)的新组件。 完全由可实例化组件(全部位于目录中)组成的组件集本身被视为是可实例化的。 如果单例组件出现在组件集中的任何地方,则组件集本身是单例且无法移入目录中。

组件集描述符具有以下结构:

assembly sname
   { 
   .category = text
   .description = " text " 
   .console = " subord-name " 

   input  sname
   output  sname
   ... 

   property  sname &nbsp[ : dflt = value ] 
   property  sname &nbsp[ : mandatory ] 
   ... 
   volume sname

   subordinate  sname
      { 
       .class = clsname
        attr = val
       ... 
      } 

   connections 
      [ 
       sub-name . trm-name => sub-name . trm-name
      ....  
      ] 
   visual 
      { 
      ... 
      } 
   } 

下列属性只为组件集定义,它们在简单组件中没有意义:

.console

从属组件的名称,它将作为此组件集的默认登录目标。 这使得可以定义一个行为类似简单组件的组件集,允许该组件集接受登录请求,采用的方式与登录控制台可以支持的简单组件所采用视的方式相同。 因为并不是每个组件都需要拥有登录控制台(取决于操作系统和其上安装的软件),所以组件集也不需要登录控制台。 如果组件集不需要登录控制台,或没有任何组件可以充当登录控制台,则此属性可以省略或设为空字符串。 这种情况例外:该属性被省略(而不是明确设置为空字符串)且组件集只有一个从属组件时,默认假设此从属组件是默认登录目标。 由 .console 属性指定(或在默认情况下针对单个从属组件集而假设)的从属组件本身可以是组件集。
指定从属组件不支持控制台登录并不是错误(因为它是没有控制台的组件,或因为它是将 .console 设置为空的组件集):这样设置的唯一结果是最终的组件集将不支持控制台登录。

下列属性是为组件集定义的;它们与简单组件的对应属性具有相同的含义:

.category

定义组件所属常规类别的任意字符串。 ADL 语法允许使用该属性,但不以任何方式解释它。 它适用于 CA AppLogic® 可视化工具,用于组织组件库(目录)中的组件。

.description

组件的简短描述。 类似于 .category,此属性的值是任意的且仅用于文档目的。

组件集中实体的顺序并不重要,所有子实体都是可选的,只是一个组件集必须至少有一个从属实体。

下面汇总了‘组件集’实体的子实体,后面各节将详细定义每一个子实体:

输入、输出

这些子实体定义了组件集的终端。

属性

定义组件集的属性。 每个属性必须连接到从属组件的至少一个属性-请参阅从属实体。

定义组件集的属性,类似于属性实体。

从属

定义组件集中的从属组件。

连接

定义组件集的连接表。 这是数组实体,每个元素相当于一个连接。

可视化

可视化显示数据。 ADL 不定义此实体的内容。 它用于 GUI 编辑器,用于存储编辑器窗口中组件显示方式相关的信息(颜色、图标外形、终端布局、从属组件布局、连接路由等)。
此实体的内容必须符合 UDL 的一般语法规则,这些规则在本文档的“适用于所有描述符类型的语法规则”部分中提供。 有关更多详细信息,另请参阅 UDL 规范。