OW2 FraSCAti中的动态重新配置(以编程方式)

时间:2014-01-19 10:29:50

标签: configuration lifecycle composite-component fractals sca

我对OW2 FraSCAti的动态重配置功能感兴趣。 (例如,启动/停止SCA组件)。到目前为止,我可以看到有两种方法可以实现这一目标。

1-使用FraSCAti FScript,如下所示:

FraSCAtiFScript> $root
#<scacomponent: reconfig>

FraSCAtiFScript> stop($root)
FraSCAtiFScript> state($root)
STOPPED

FraSCAtiFScript> start($root)
FraSCAtiFScript> state($root)
STARTED 

2-通过使用FraSCAti Explorer GUI,例如,停止组件如下:

enter image description here

但我想通过访问API以编程方式执行这些重新配置。这样做有一个例子吗?

来源:http://frascati.ow2.org/doc/1.4/ch09s02.html#d95e926

1 个答案:

答案 0 :(得分:0)

您可以使用Remote API。从示例:

使用FraSCAti FScript重新配置

import org.ow2.frascati.remote.introspection.resources.Node;

Collection<Node> result;

System.out.println("Before reconfiguration:");
result = reconfiguration.eval("$domain/scadescendant::services;");
System.out.println(result);

reconfiguration.eval("set-state($domain/scadescendant::services, \"STOPPED\");");

System.out.println("After reconfiguration:");
result = reconfiguration.eval("$domain/scadescendant::services;");
System.out.println(result);

使用FraSCAti FScript查询

import org.ow2.frascati.remote.introspection.resources.Node;

Collection<Node> result = reconfiguration.eval( 
    "$domain/scadescendant::component-factory/scaservice::*;"
);

System.out.println(result);