zeebe入门课程6-bpmn元素的支持3(任务)

zeebe目前支持两种任务(Tasks)。服务任务(Service Tasks)和接收任务(Receive Tasks)。

Service Tasks

服务任务表示工作流中具有特定类型的工作项。当工作流实例到达服务任务时,它将创建相应的作业。令牌流在此点停止。

工人可以订阅这些工作并在工作完成时完成它们。当作业完成时,令牌流将继续。

XML表示:

<bpmn:serviceTask id="collect-money" name="Collect Money">
  <bpmn:extensionElements>
    <zeebe:taskDefinition type="payment-service" />
    <zeebe:taskHeaders>
      <zeebe:header key="method" value="VISA" />
    </zeebe:taskHeaders>
  </bpmn:extensionElements>
</bpmn:serviceTask>

服务任务绘制如下图所示:

service-task

task-headers

Task Definition

每个服务任务必须有一个任务定义。它指定了定时器可以订阅的作业类型。或者,任务定义可以指定当工作进程发出失败信号时重试作业的次数(默认值=3)。

<zeebe:taskDefinition type="payment-service" retries="5" />

Task Headers

服务任务可以定义任意数量的任务头。任务头是与作业一起传递给工作人员的元数据。它们可以用作工作者的配置参数。

<zeebe:taskHeaders>
  <zeebe:header key="method" value="VISA" />
</zeebe:taskHeaders>

Variable Mappings

默认情况下,所有作业变量都合并到工作流实例中。可以通过在服务任务中定义输出映射来定制此行为。输入映射可用于将变量转换为工作人员接受的格式。

XML表示:

<serviceTask id="collectMoney">
  <extensionElements>
    <zeebe:ioMapping>
      <zeebe:input source="price" target="total"/>
      <zeebe:output source="method" target="paymentMethod"/>
     </zeebe:ioMapping>
  </extensionElements>
</serviceTask>

Receive Tasks

接收任务是指引用消息的任务。它们可用于等待,直到收到正确的消息。

Messages

一条消息可以被一个或多个接收任务引用。它保存用于消息关联的信息。所需的属性是

  • the name of the message
  • the correlation key

相关键被指定为变量表达式。当输入接收任务并从工作流实例变量中提取值时,将对其进行评估。变量值必须是字符串或数字。如果相关键无法解析或既不是字符串也不是数字,则会创建事件。

XML表示:

<bpmn:message id="Message_1iz5qtq" name="Money collected">
   <bpmn:extensionElements>
     <zeebe:subscription correlationKey="orderId" />
   </bpmn:extensionElements>
</bpmn:message>

 

Receive Tasks

Receive Tasks

当令牌到达接收任务时,它将在那里等待,直到正确的消息被关联。与事件的关联基于消息的名称和关联键。当消息关联时,任务将离开。

XML表示:

<bpmn:receiveTask id="money-collected" name="Money collected" messageRef="Message_1iz5qtq">
</bpmn:receiveTask>

receive-task

Variable Mappings

默认情况下,所有消息变量都合并到工作流实例中。可以通过在接收任务中定义输出映射来定制此行为。

XML表示:

<bpmn:receiveTask id="money-collected" name="Money collected" messageRef="Message_1iz5qtq">
    <bpmn:extensionElements>
    <zeebe:ioMapping>
      <zeebe:output source="price" target="totalPrice"/>
     </zeebe:ioMapping>
  </bpmn:extensionElements>
</bpmn:receiveTask>

zeebe qq交流群群号:856546010

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值