ChangeSynergy::TriggerParser
ChangeSynergy::TriggerParser 是针对 IBM Rational Change 输入触发器文件的 XML 解析器。 当触发器触发时,IBM Rational Change 生成一个 XML 文件,该文件包含关于引起触发器触发的对象和服务器的有用信息。该类非常适用于检索 XML 文件信息(例如服务器协议、主机名和端口)以及所有已更改属性的列表。
以下方法可用:
sub new(xmlFile)
初始化新创建的 ChangeSynergy::TriggerParser 类,以便使该类以可访问的数据结构表示传入的 xml 数据。
my $trigger = new ChangeSynergy::TriggerParser( 'file.xml' );
参数: xmlFile - 要进行语法分析的触发器 xml 文件或包含需要进行语法分析的 xml 数据的标量。
获取管理员令牌。
my $token = $trigger->get_admin_token()
返回:标量 管理员用户的令牌。 如果触发器中未提供任何管理员令牌,则是未定义的
获取管理员用户名。
my $user = $trigger->get_admin_user()
返回:标量 管理员用户的用户名。 如果触发器中未提供任何管理员用户名,则是未定义的
收集 xml 数据中的所有属性,并将其放入散列中。这些属性将是触发器触发时修改的属性。
my %trigger_attributes = $trigger->get_attributes()
返回:散列 所有在该操作期间设置或修改的触发器属性, 如果 xml 文件中未定义任何触发器属性, 则是未定义的。
获取当触发器触发时用户连接的 IBM Rational Synergy 数据库。 当创建与 IBM Rational Change 服务器的新连接时,它非常有用。
my $database = $trigger->get_database()
返回:标量 触发器触发时用户所连接的数据库, 或如果未提供任何数据库,则是未定义的。
获取当触发器触发时用户连接的 IBM Rational Synergy 数据库唯一标识。 这是数据库的 IBM Rational Change 唯一标识。
my $database = $trigger->get_database_uid()
返回:标量 触发器触发时用户所连接的数据库唯一标识, 或如果未提供任何数据库标识,则是未定义的。
获取当触发器触发时用户连接的数据库的 DCM 定界符。
my $dcm_delimiter = $trigger->get_dcm_delimiter()
返回:标量 当触发器触发时用户连接的数据库的 DCM 定界符, 或如果未提供任何 DCM 定界符,则是未定义的。
获取 pt.cfg 文件中定义的电子邮件地址,该地址将用于从触发器发送电子邮件时。
my $from_email = $trigger->get_from_email_addr();
返回:标量 用于通过 PERL 脚本发送的电子邮件的源部分的电子邮件地址, 或如果触发器中未提供任何源对象,则 是未定义的。
当执行转换时,初始状态将是进行转换之前对象所处的状态。
my $from_object = $trigger->get_from_object()
返回:标量 关系的源对象,或如果触发器中未提供任何源对象, 则是未定义的。
当执行转换时,初始状态将是进行转换之前对象所处的状态。
my $from_state = $trigger->get_from_state()
返回:标量 对象所处的初始状态,或如果触发器中未提供任何初始状态, 则是未定义的。
获取当触发器触发时用户连接的 IBM Rational Change 安装的主机名。当创建与 IBM Rational Change 服务器的新连接时,它非常有用。
my $host = $trigger->get_host()
返回:标量 引起触发器触发的 IBM Rational Change 安装的主机名,或如果 为提供任何主机名,则是未定义的。
获取引起触发器触发的对象的标识号。
对象标识是以下其中一种类型: problem_number task_number cvid
my $object_id = $trigger->get_object_id()
返回:标量 引起触发器触发的对象的对象标识, 或如果触发器中未提供任何对象标识,则是未定义的。
获取引起触发器触发的对象的类型。
对象类型是以下其中一种: CCM_PROBLEM CCM_TASK CCM_OBJECT
my $object_type = $trigger->get_object_type()
返回:标量 触发器操作的对象类型, 或如果触发器中未提供任何对象类型,则是未定义的。
获取当触发器触发时用户连接的 IBM Rational Change 安装的端口。当创建与 CS 服务器的新连接时,它非常有用。
my $port = $trigger->get_port()
返回:标量 引起触发器触发的 IBM Rational Change 安装的端口,或如果 未提供任何端口,则是未定义的。
获取当触发器触发时用户连接的 IBM Rational Change 安装的协议。协议的类型为 http 或 https,取决于服务器的设置方式。当创建与 CS 服务器的新连接时,它非常有用。
my $protocol = $trigger->get_protocol()
返回:标量 引起触发器触发的 IBM Rational Change 安装的协议类型,或如果 未提供任何协议,则是未定义的。
获取关系正在执行的操作。要么是 CREATE_RELATION,要么是 DELETE_RELATION。
my $relation_action = $trigger->get_relation_action()
返回:标量 触发器正在执行的关系操作, 或如果触发器中未提供任何对象类型,则是未定义的。
获取触发器正在操作的关系的名称。
my $relation_name = $trigger->get_relation_name()
返回:标量 触发器正在操作的关系名称, 或如果触发器中未提供任何对象类型,则是未定义的。
获取触发器正在操作的关系类型。
关系类型:
CCM_PROBLEM_PROBLEM:一个问题 --> 问题关系。 CCM_PROBLEM_TASK:一个问题 --> 任务关系。 CCM_PROBLEM_OBJECT:一个问题 --> 对象关系。
CCM_TASK_PROBLEM:一个任务 --> 问题关系。 CCM_TASK_TASK:一个任务 --> 任务关系。 CCM_TASK_OBJECT:一个任务 -->对象关系。
CCM_OBJECT_PROBLEM:一个对象 --> 问题关系。 CCM_OBJECT_TASK:一个对象 -->任务关系。 CCM_OBJECT_OBJECT:一个对象 -->对象关系。
my $relation_type = $trigger->get_relation_type()
返回:标量 触发器正在操作的关系类型, 或如果触发器中未提供任何对象类型,则是未定义的。
收集 xml 数据中的所有请求的触发器属性,并将其放入散列中。请求的属性指特别请求从生命周期编辑器发送至触发器的属性。如果触发器是前置转换触发器,则请求的属性值将是修改之前的值。如果触发器是后置触发器(后修改、后转换或后提交),则请求的属性值将是修改之后的值。
my %trigger_attributes = $trigger->get_requested_attributes();
返回:散列 所有请求通过生命周期编辑器发送至触发器的属性, 或如果 xml 文件中未定义任何请求触发器属性,则是未定义的。
获取引起触发器触发的用户的角色。
my $role = $trigger->get_role()
返回:标量 引起触发器触发的用户的角色, 或如果触发器中未提供任何角色,则是未定义的。
获取 pt.cfg 文件中定义的 SMTP 服务器,该服务器将用于从触发器发送电子邮件。
my $smtp_server = $trigger->get_smtp_server();
返回:标量 用于通过 PERL 脚本发送电子邮件的 SMTP 服务器,或如果 触发器中未提供任何源对象,则是未定义的。
如果为预订触发器触发该触发器,则会获取预订了已修改 CR 的订户的电子邮件地址列表。对于所有非预订触发器,该字段是未定义的。
my $token = $trigger->get_subscriber_email_addresses()
返回:标量 此 CR 订户的电子邮件地址列表, 或如果触发器中未提供任何令牌,则是未定义的
当执行关系创建时,这是关系所指向的对象。
my $to_object = $trigger->get_to_object()
返回:标量 关系指向的对象,或如果触发器中 未提供任何目标对象,则是未定义的。
当执行转换时,目标状态将是对象的最终状态。
my $to_state = $trigger->get_to_state()
返回:标量 对象的目标状态,或如果触发器中 未提供目标状态,则是未定义的。
获取引起触发器触发的用户的令牌。
my $token = $trigger->get_token()
返回:标量 引起触发器触发的用户的令牌, 或如果触发器中未提供任何令牌,则是未定义的
获取引起触发器触发的用户的用户名。
my $user = $trigger->get_user()
返回:标量 引起触发器触发的用户的用户名, 或如果触发器中未提供任何用户名,则是未定义的。
设置类实例的“管理令牌”属性。
$trigger->set_admin_token($value);
参数: value - 管理令牌的新值。
设置类实例的“管理用户名”属性。
$trigger->set_admin_user($value);
参数: value - 管理用户名的新值。
设置类实例的“数据库”属性。
$trigger->set_database($value);
参数: value - 数据库的新值。
设置类实例的“数据库唯一标识”属性。
$trigger->set_database_uid($value);
参数: value - 数据库唯一标识的新值。
设置类实例的“DCM 定界符”属性。
$trigger->set_dcm_delimiter($value);
参数: value - DCM 定界符的新值。
设置类实例的“电子邮件发件人地址”属性。 完成触发器 XML 文件的语法分析后将设置该属性,但是如果需要,可以覆盖设置。
$trigger->set_from_email_addr($value);
参数: value - 源对象的新值。
设置类实例的“源对象”属性。
$trigger->set_from_object($value);
参数: value - 源对象的新值。
设置类实例的“初始状态”属性。
$trigger->set_from_state($value);
参数: value - 初始状态的新值。
设置类实例的“主机名”属性。
$trigger->set_host($value);
参数: value - 主机的新值。
设置类实例的“对象标识”属性。
$trigger->set_object_id($value);
参数: value - 对象标识的新值。
设置类实例的“对象类型”属性。
$trigger->set_object_type($value);
参数: value - 对象类型的新值。
设置类实例的“端口”属性。
$trigger->set_port($value);
参数: value - 端口的新值。
设置类实例的“协议”属性。
$trigger->set_protocol($value);
参数: value - 协议的新值。
设置类实例的“关系操作”属性。
$trigger->set_relation_action($value);
参数: value - 关系操作的新值。
设置类实例的“关系名称”属性。
$trigger->set_relation_name($value);
参数: value - 关系名称的新值。
设置类实例的“关系类型”属性。 $trigger->set_relation_type($value);
参数: value - 关系类型的新值。
设置类实例的“角色”属性。
$trigger->set_role($value);
参数: value - 用户角色的新值。
设置类实例的“SMTP 服务器”属性。完成触发器 XML 文件的语法分析后将设置该属性,但是如果需要,可以覆盖设置。
$trigger->set_smtp_server($value);
参数: value - 源对象的新值。
设置类实例的“订户电子邮件地址”属性。
$trigger->set_subscriber_email_addresses($value);
参数: value - 订户电子邮件地址的新值。
设置类实例的“目标对象”属性。
$trigger->set_to_object($value);
参数: value - 目标对象的新值。
设置类实例的“目标状态”属性。
$trigger->set_to_state($value);
参数: value - 目标状态的新值。
设置类实例的“令牌”属性。
$trigger->set_token($value);
参数: value - 令牌的新值。
设置类实例的“用户名”属性。
$trigger->set_user($value);
参数: value - 用户名的新值。