第 27 章 Business Central 进程的 FDO 流程流畅 API
Red Hat Process Automation Manager 提供了一个 ClusterClaim 过程流畅的 API,可让您使用工厂创建业务流程。您还可以手动验证使用流程流畅 API 创建的业务流程。进程流畅 API 在 org.kie.api.fluent 软件包中定义。
因此,您可以使用流畅的 API 过程在几行代码中创建业务流程,而不是使用forwarder2 XML 标准。
27.1. 带有 BPMN 进程流畅 API 的请求示例 复制链接链接已复制到粘贴板!
以下示例包括用于与流程进行基本交互的 grub 处理 API 请求。如需了解更多示例,请 从红帽客户门户网站下载 Red Hat Process Automation Manager 7.12.0 Source Distribution,再导航到 ~/rhpam-7.12.0-sources/src/droolsjbpm-knowledge-$VERSION/kie-api/src/main/java/org/kie/api/fluent。
- 创建与 Business Central 业务流程交互
以下示例显示了基本业务流程,以及脚本任务、异常处理程序和变量:
创建并与 Business Central 业务流程交互的请求示例
Process process = // Create process builder factory.processBuilder(processId) // package and name .packageName("org.jbpm") .name("My process") // start node .startNode(1).name("Start").done() // Add variable of type string .variable(var("pepe", String.class)) // Add exception handler .exceptionHandler(IllegalArgumentException.class, Dialect.JAVA, "System.out.println(\"Exception\");") // script node in Java language that prints "action" .actionNode(2).name("Action") .action(Dialect.JAVA, "System.out.println(\"Action\");").done() // end node .endNode(3).name("End").done() // connections .connection(1, 2) .connection(2, 3) .build();在本例中,会获取
ProcessBuilderFactory引用,然后使用processBuilder (String processId)方法创建ProcessBuilder实例,它将与给定的进程 Id 关联。ProcessBuilder实例允许您使用流畅的 API 构建所创建进程的定义。业务流程由三个组件组成:
header : header 部分包含全局元素,如进程、导入和变量的名称。
在上例中,标头包含进程的名称和版本,以及软件包名称。
nodes: nodes 部分包含作为进程一部分的所有不同节点。
在上例中,通过调用
startNode(),actionNode(), 和endNode()方法,将节点添加到进程中。这些方法返回特定的NodeBuilder,供您设置该节点的属性。在代码完成配置该特定节点后,done ()方法会返回NodeContainerBuilder来添加更多节点(如有必要)。Connection: connections 部分将节点链接到创建流 chart。
在上例中,添加所有节点后,您必须通过在它们之间创建连接来进行连接。您可以调用
connection ()方法来链接节点。
最后,您可以调用
build ()方法并获取生成的进程定义。build ()方法还会验证进程定义,并在进程定义无效时抛出异常。