WSRR Studio V8.0 应用系列,第 2 部分 使用 Studio 实现 WSRR 生命周期管理2

<sacl:state displayName=”Business Capability Identified” name=”CapabilityIdentified”>

<sacl:description> …………… </sacl:description>

</sacl:state>

<sacl:transition name=”fromCapabilityIdentified_toCharterReview”>

<sacl:sourceState>CapabilityIdentified</sacl:sourceState>

<sacl:operation name=”ProposeCharter” portType=”_:CapabilityLifecycle”/>

<sacl:targetState>CharterReview</sacl:targetState>

</sacl:transition>

上面的片段给出了服务生命周期状态及状态之间转换的定义,例如可以通过名为 ProposeCharter 的操作,将服务状态从 CapabilityIdentified 变为 CharterReview

OWL 文件,包含两种,一种用于描述业务模型,一种用于描述分类系统,服务生命周期对应的分类系统可以在 Configuration Profile Files/OWL Content/Classifications 目录下找到。

<owl:Class rdf:about=”&GEPLifecycles;CapabilityIdentified”>

         <rdfs:subClassOf rdf:resource=”&GEPLifecycles;CapabilityLifecycle”/>

</owl:Class>

<owl:Class rdf:about=”&GEPLifecycles;ProposeCharter”>

         <rdfs:subClassOf rdf:resource=”&GEPLifecycles;Transition”/>

</owl:Class>

上面的片段给出了服务生命周期状态以及相关转换的 OWL 定义。这些定义将会作为元数据信息添加到被治理的对象上,可以通过查询相应的分类定义来获取目前服务处于哪个状态的信息。

Policy 文件,
用于描述状态转换所需要满足的限制条件。可以在 Configuration Profile Files/POLICY 目录下找到相应的描述文件。


6. policy 定义

XML error: The image is not displayed because the width is greater than the maximum of 580 pixels. Please decrease the image width.

上面的片段给出
4
所对应的校验定义,从上面的片段可以看出,当 business service 对象,做名为 ProposeCharter 的状态转换操作时,名为”gep63_charter“的关系必须至少有一个关联的对象。

上述的配置文件可以通过 WSRR Studio 进行图形化的定制,不需要人手工编辑这些配置文件。下面将介绍 WSRR Studio 相关的功能。


回页首

WSRR Studio 服务生命周期定制介绍

WSRR Studio 是一个基于 Eclipse RCP 产品,可以通过绘制 UML 图形来实现对服务生命周期的定制。下面将结合具体的业务实例对这一过程进行介绍。

用户场景:

客户需要注册公司内部所使用的 MQ 服务,从而实现服务的标准化,集中统一管理,以及运行时的动态查找。每一个 MQ 服务需要关联到一个 XSD 文档,用于描述消息的格式。该 MQ 服务的生命周期包含三个状态:已创建,上线,下线。上线表示服务可用,下线表示服务不可用,已创建表示服务还处于开发部署阶段。同时规定没有绑定 XSD 文档的 MQ 服务将不能变更为上线状态。这一规定可以通过监管策略来实现。

WSRR Studio 实现上述业务场景,包含如下四步:

1.    创建业务模型

2.    创建生命周期

3.    绑定生命周期及创建监管策略

4.    导入到 WSRR

创建业务模型

打开 WSRR Studio
创建一个和 WSRR Server 相同版本的 profile project,以 WSRR8.0 为例,如下图所示:


7. 创建 Profile Project

右键点击刚创建完的 project, 选择 NewWSRR Business Model, 详细的创建过程在之前的文章里面已经有介绍,创建出来的业务模型如下图所示:


8. 创建业务模型

在创建的过程中,可以设置属性是否必须有值,以及属性的默认值。这些通过 General Tab 里面的 Multiplicity 属性和 Advanced Tab 里面的 default value 来设置。在上面的业务模型中,MQService 的属性除 QManager 以外,其他属性都必须有值,其中 Host 的默认值是 localhostPort 的默认值设置为 2424XSDDocument 对象是已有对象,是从 XSD 模型里面拖进来的。可以看到在 XSDDocument 对象的左上角有一个小图标,它用以表示该对象是引用的其他模型里面的对象。MQService XSDDocument 之间通过关系 MessageType 关联。

创建生命周期

右键点击 project,选择 NewWSRR Lifecycle Cycle, 输入必要的信息,其中 name 的取值必须是一个 NC Name。点击 finish,进入生命周期编辑视图,Studio 默认创建出了 initial state final state
修改 initial state 的名字为 Created
修改 final state 的名字为 Offline
然后创建一个新的 state,名字为 Online,用 transition 将他们关联起来。如下图所示:


9. 创建示例生命周期

目前该图中的状态转换是自动转换,需要在 transition 中加入 trigger event,将他变为人为控制的转换。选中 transition,然后在 Triggers Tab 里面添加 trigger,类型为 Signal Event


10. 创建 Signal event

点击 ok 按钮,默认会创建出名字是 signal1 signal event,可以在左侧的导航树中展开生命周期的定义,找到并选中刚创建出来的 singal event,然后在属性里面修改名字,如
11
所示。例如将 signal1 改为 MQPublish
重复上述步骤,在 Online Offline 之间的状态转换上加入名字为 MQRetire signal


11. 修改 signal 名字

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营