就像 IBM® Rational® Rhapsody® 提供的预定义内部检查一样,您可以定义代码生成功能是否调用外部检查。另外,还可以定义要对哪些元类执行外部检查。
可以通过 Rational Rhapsody API 来实现用户定义的外部检查,并可以使用 Rational Rhapsody 中的现有 GUI 来运行这些检查。无论是内部检查还是外部检查,这些检查都将执行,并且它们的结果将通过产品中的同一个 GUI 显示。
Rational Rhapsody 提供了一个 API,允许通过使用 COM API(对于 C++ 和 VB 用户)和 Java™ API(对于 Java 用户)来注册、枚举和除去用户定义的外部检查。COM 回调(连接点)允许您在执行检查时打开用户定义的代码。此功能适合于那些使用 COM API 或 Java API 的用户,因此,您可以添加、执行或除去用户定义的检查。
例如,如果 COM API 用户要创建用户定义的检查,请完成下列步骤:
| 方法 | 说明 |
|---|---|
| GetName() | 以字符串形式返回 name 属性。 |
| GetDomain() | 以字符串形式返回 domain 属性。 |
| GetSeverity() | 返回其中一个预定义的严重性字符串:Error、Warning 或 Info。 |
| IsCompleteness() | 对于完整性检查返回 TRUE,对于正确性检查返回 FALSE。 |
| ShouldCallFromCG() | 如果必须在用户生成代码时调用此检查,那么返回 TRUE。 |
| GetRelevantMetaclasses() | 返回相关元类和/或项的列表。此检查将由 Rational Rhapsody 针对当前配置的作用域中任何返回了相应元类的元素启动。 |
| Execute() | 由 Rational Rhapsody 调用,用于运行检查。如果此检查成功,那么此例程将返回 TRUE;如果此检查失败,那么此例程将返回 FALSE。此例程有两个参数: |