Cougaar学习之-Domain/LogicProvider
来源:互联网 发布:爱淘宝 1元购物券 编辑:程序博客网 时间:2024/06/05 05:53
LogicProvider是cougaar中agent上的一种插入逻辑功能的实现方式,它的特点是:同步(synchronization)。适用范围:适于反应灵敏的操作,如数据格式的转换。
开发步骤:
第一步,代码实现
代码实现包括两个类**Domain和**LogicProvider。
1. **Domain
关键点:
public String getDomainName() {
return "RcvMessageDomain"; //这个名称将来会用在发布配置中
}
protected void loadLPs() {
//RceMessageLogicProvider就是对应的**LogicProvider
addLogicProvider(new RcvMessageLogicProvider(rootPlan, self));
}
2. **LogicProvider
关键点:
public void execute(EnvelopeTuple m, Collection changeReports) {
Object object = m.getObject();
if (m.isAdd()) {
//处理逻辑
} else if (m.isChange()) {
//处理逻辑
} else if (m.isRemove()) {
//处理逻辑
}
}
在logicProvider中,可以使用从**domain传递过来的rootPlan来代替BlackboardService的功能,与Blackboard进行交互.
第二步,发布配置
有两种配置方案, 一种是修改%COUGAAR_INSTALL_PATH%/configs/common/LDMDomains.ini文件,增加类似于"glm=org.cougaar.glm.ldm.GLMDomain"的配置;
另一种是在Cougaar应用的启动配置中,使用下面的配置
<vm_parameter>
-Dorg.cougaar.domain.**Domain="**.**.**.**Domain"
</vm_parameter>
注意:修改Cougaar应用的启动配置之后,需要在run/dubug中根据配置文件重新生成cougaar的启动参数。
- Cougaar学习之-Domain/LogicProvider
- Cougaar学习之---安装篇
- cougaar学习笔记之---序列化Asset到MySQL中
- Cougaar学习笔记之---定制特殊的AspectType和AspectValue
- cougaar学习笔记一
- [Cougaar]Cougaar快速开始指导(Cougaar Quick Start Guide)
- domain-driven-design学习
- Linux之IRQ domain
- WebLogic学习笔记-Domain
- tuxedo之domain应用入门
- tuxedo之domain应用入门
- WebLogic之domain域安装
- 《IPC之unix domain socket》
- Misformatted domain name 之解决方案
- 一大坨GoogleAPI的学习笔记之三(基于oAuth2.0的domain-wide authentication)
- hibernate学习的那些事之对象关系映射文件--domain对象.hbm.xml
- 学习Keystone之(1): Multi Domain 支持下的ID Mapping
- 学习笔记之2016_3_14---java的service domain dao 分层思路
- 在VC中给Slider添加定制的Tooltips
- 关于Web 2.0 网站的创业思考
- javascript打印,或浏览功能
- javascript的一些小技巧
- 网页常用小技巧(JavaScript)
- Cougaar学习之-Domain/LogicProvider
- 修改已经打开的对话框的浏览路径
- javascript 动态添加表格行
- Asp.Net从零开始学-11
- HTML结构化:实践DIV+CSS网页布局入门指南
- Dreamweaver快捷键大全
- 用VC调用Shell中的目录浏览对话框
- never sliderbar(js版简单的滑动条控件)
- Asp.Net从零开始学-12