AppExtensionProfile
描述这个插件,绑定应用扩展点(见本文档插件开发 > 绑定应用扩展点章节)
- 注意:本章节提供的相关接口说明,请以aws-api-doc为主。
- 开发的代码所在应用,应用配置中必须关联
流程中心(com.actionsoft.apps.workbench)
应用
可以有多种封装方式向AWS的流程引擎创建一个EAI任务,例如通过本地的Java程序、外部的服务接口。这些方式最终都是通过调用createEAITaskInstance()方法完成。
SDK.getTaskAPI().createEAITaskInstance(...);
例如有个名叫百度
的系统,张三
向李四
创建一个打开百度首页的待办任务,代码看起来如下:
EAITaskInstance baiduTask = SDK.getTaskAPI().createEAITaskInstance("百度", "0001", "张三", "李四", "这是百度的首页", "http://www.baidu.com", 1);
点击这里查看API JavaDoc
参数 | 说明 |
---|---|
applicationName | 应用系统简称,最长36个字符,全平台应唯一 |
outerId | 该信息在外部系统的ID,最长64个字符 |
createUid | 创建人账户,一个合法的AWS用户登录账户 |
targetUid | 执行人账户,一个合法的AWS用户登录账户 |
title | 任务标题,最长255个字符 |
actionParameter | 该参数是私有格式, 被对应的EAITaskAction实现类处理,最长255个字符 |
priority | 任务优先级 (0:低;1:无;2:中;3:高) |
创建成功返回EAITaskInstance对象
使用以下API,将EAI任务状态从待办转为已办
SDK.getTaskAPI().completeEAITask("百度", "0001");
使用以下API,将EAI任务标记为已删除
SDK.getTaskAPI().deleteEAITask("百度", "0001");
如果需要EAI任务在我的工作台
、移动端列表中响应用户的点击行为,或则标记特定的背景色,则需要为我的工作台
绑定应用扩展点。
由AppExtensionProfile
类完成向我的工作台
的注册。
// 注册应用扩展点
Map<String, Object> params3 = new HashMap<String, Object>();
params3.put("applicationName", "百度");
params3.put("behaviorClass", BaiduEAIBehavior.class.getName());
list.add(new AppExtensionProfile("我的工作台->百度任务行为", "aslp://com.actionsoft.apps.workbench/registerEAIBehavior", params3));
要成功注册,必须设置该应用依赖com.actionsoft.apps.workbench
,即在该应用的manifest.xml
声明依赖
<requires>
<require appId="com.actionsoft.apps.workbench" notActiveHandler="error"/>
</requires>
一个提供getBehaviors()方法的普通Java类
//用户显示的待办或则已办任务含有该EAI任务时
//将该系统的EAI任务组织到instances
public ResponseObject getBehaviors(UserContext user, List<EAITaskInstance> instances) {
Map<String, Map<String, String>> behaviors = new HashMap<>();
...
return ResponseObject.newOkResponse().put("behaviors", behaviors);
}
该方法要求返回一个ResponseObject对象,该对象含有一个名为behaviors的Map,包含了这些EAI任务的用户行为属性: