Shark通过ToolAgent调用外部系统的功能。
被JavaClassToolAgent调用的代码必须具备以下特征:
- 必须具有方法:public static void execute()。Shark会调用此方法
- execute方法的参数可以是任意多个,但是参数的数据类型必须是AppParameter
以下是一段实例代码:
import org.enhydra.shark.api.internal.toolagent.AppParameter;
public class AutoPricing {
/**
* execute
*
* @param prod_id String
* @param prod_price Double
*/
public static void execute(AppParameter prod_id, AppParameter prod_price) {
prod_price.the_value=Double.valueOf("61345.57");
}
}
这段代码的业务背景是根据产品代码prod_id获得产品的特征,进而计算报价,写入process context “prod_price”中。在上述代码中,计算报价的过程已经被忽略。
AppParameter 的使用方法在shark.api文档中已经有说明,还可以参考Shark提供的MailProc.java
编译之后,打包成jar文件,放置在Shark的lib目录下,重新启动Shark即可。
在JaWE中,该应用的定义如下:
Shark中做出相应的Map: