2014-01-19 22 views
0

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

1-通过使用弗拉斯卡蒂FScript,如下:

FraSCAtiFScript> $root 
#<scacomponent: reconfig> 

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

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

2-通过使用资源管理器弗拉斯卡蒂GUI,例如,停止部件如下所示:

enter image description here

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

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

回答

0

你可以使用Remote API。从这个例子:

重新配置与弗拉斯卡蒂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); 

查询与弗拉斯卡蒂FScript

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

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

System.out.println(result);