engine

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 6, 2026 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Overview

Package engine 实现 BPMN 流程引擎的运行时。

Index

Constants

View Source
const (
	// BatchTypeProcessInstanceMigration 表示流程实例迁移批次。
	BatchTypeProcessInstanceMigration = "process-instance-migration"
	// BatchStatusInProgress 表示批次执行中。
	BatchStatusInProgress = "in-progress"
	// BatchStatusCompleted 表示批次全部成功。
	BatchStatusCompleted = "completed"
	// BatchStatusFailed 表示批次存在失败分片。
	BatchStatusFailed = "failed"
	// BatchPartStatusQueued 表示分片等待执行。
	BatchPartStatusQueued = "queued"
	// BatchPartStatusCompleted 表示分片执行成功。
	BatchPartStatusCompleted = "completed"
	// BatchPartStatusFailed 表示分片执行失败。
	BatchPartStatusFailed = "failed"
)

批处理类型与状态常量。

View Source
const (
	HistoryNone     = "none"
	HistoryInstance = "instance"
	HistoryTask     = "task"
	HistoryActivity = "activity"
	HistoryAudit    = "audit"
	HistoryFull     = "full"
)

支持的历史级别。

View Source
const Version = "0.1.0"

Version 是当前引擎版本。

Variables

This section is empty.

Functions

func IsReachable

func IsReachable(process *model.Process, from, to model.FlowNode) bool

IsReachable 判断从 from 节点沿顺序流(含子流程嵌套)是否可达 to 节点(G2)。 对位 Java FlowUtils.isReachable(process, sourceElement, targetElement); 退回场景调用方传入 (target, source),即"目标能否走到当前节点"。 @param process 流程 @param from 起点 @param to 终点 @return 是否可达

func WithActor

func WithActor(ctx context.Context, userID string) context.Context

WithActor 将可信操作人写入上下文;REST 认证中间件使用。 @param ctx 调用方上下文 @param userID 认证后的操作人 @return 携带操作人的上下文

Types

type Config

type Config struct {
	StartupContext context.Context         // 仅用于初始化和恢复的上下文;为空使用 Background
	HistoryLevel   string                  // 历史级别,默认 audit
	Clock          clock.Clock             // 时钟,默认真实时钟
	IDs            idgen.Generator         // ID 生成器,默认 UUIDv7
	MaxAgendaSteps int                     // 单命令最大议程步数,默认 10000
	TenantID       string                  // 默认租户
	StatePath      string                  // 状态文件路径,为空时仅使用内存
	StateStore     statestore.Store        // 状态存储,优先于 StatePath
	RowRepository  *flowablerow.Repository // 按表行仓储,可选
	LoadRows       bool                    // 启动时从行仓储恢复
	LoadTenant     string                  // 启动恢复租户
	// RecordSequenceFlowHistory 在迁移续跑时按 Java audit 语义记录顺序流历史。
	RecordSequenceFlowHistory bool
}

Config 是引擎配置。

type Delegate

type Delegate func(ctx context.Context, execution *Execution) error

Delegate 是服务任务委托。

type Engine

type Engine struct {
	// contains filtered or unexported fields
}

Engine 是流程引擎实现。

func New

func New(cfg Config) (*Engine, error)

New 创建流程引擎。 @param cfg 配置 @return 引擎 @return 创建错误

func (*Engine) ActivateProcessDefinition

func (e *Engine) ActivateProcessDefinition(ctx context.Context, definitionID string, includeInstances bool) error

ActivateProcessDefinition 激活流程定义。 @param ctx 上下文 @param definitionID 流程定义 ID @param includeInstances 是否同时激活实例 @return 激活错误

func (*Engine) ActivateProcessInstance

func (e *Engine) ActivateProcessInstance(ctx context.Context, processInstanceID string) error

ActivateProcessInstance 激活流程实例。 @param ctx 上下文 @param processInstanceID 实例 ID @return 激活错误

func (*Engine) AddAttachment

func (e *Engine) AddAttachment(ctx context.Context, taskID string, attachment api.Attachment) (api.Attachment, error)

AddAttachment 添加任务附件。 @param ctx 上下文 @param taskID 任务 ID @param attachment 附件 @return 附件 @return 添加错误

func (*Engine) AddCandidateGroup

func (e *Engine) AddCandidateGroup(ctx context.Context, taskID, groupID string) error

AddCandidateGroup 添加候选组。 @param ctx 上下文 @param taskID 任务 ID @param groupID 组 ID @return 添加错误

func (*Engine) AddCandidateUser

func (e *Engine) AddCandidateUser(ctx context.Context, taskID, userID string) error

AddCandidateUser 添加候选用户。 @param ctx 上下文 @param taskID 任务 ID @param userID 用户 ID @return 添加错误

func (*Engine) AddComment

func (e *Engine) AddComment(ctx context.Context, taskID, userID, message string) (api.Comment, error)

AddComment 添加任务评论。 @param ctx 上下文 @param taskID 任务 ID @param userID 作者 @param message 内容 @return 评论 @return 添加错误

func (*Engine) AddCommentDetail added in v0.1.2

func (e *Engine) AddCommentDetail(ctx context.Context, taskID, processInstanceID, userID, typ, message, fullMessage string) (api.Comment, error)

AddCommentDetail 添加评论并显式指定类型与完整原文(对位 Java AddHisCommentCmd: TYPE_ 缺省 SP、MESSAGE_ 存归一化内容、FULL_MSG_ 存原文、ACTION_='AddComment')。 taskID 非空走任务级(校验任务与租户),否则按流程级(实例必须存在,对位 Java HistoricProcessInstance 不存在抛 FlowableObjectNotFoundException)。 @param ctx 上下文 @param taskID 任务 ID,可空 @param processInstanceID 实例 ID,taskID 为空时必填 @param userID 作者 @param typ 类型代码,默认 SP @param message 归一化后的展示内容 @param fullMessage 原始内容 @return 创建的评论 @return 写入错误

func (e *Engine) AddDefinitionIdentityLink(ctx context.Context, definitionID string, link api.IdentityLink) (api.IdentityLink, error)

AddDefinitionIdentityLink 添加候选发起人。 @param ctx 上下文 @param definitionID 流程定义 ID @param link 链接 @return 创建后的链接 @return 创建错误

func (e *Engine) AddInstanceIdentityLink(ctx context.Context, processInstanceID string, link api.IdentityLink) (api.IdentityLink, error)

AddInstanceIdentityLink 添加流程实例身份链接。 @param ctx 上下文 @param processInstanceID 实例 ID @param link 链接 @return 创建后的链接 @return 创建错误

func (*Engine) AddMembership

func (e *Engine) AddMembership(ctx context.Context, userID, groupID string) error

AddMembership 添加成员关系。 @param ctx 上下文 @param userID 用户 ID @param groupID 组 ID @return 添加错误

func (*Engine) AddProcessAttachment

func (e *Engine) AddProcessAttachment(ctx context.Context, processInstanceID string, attachment api.Attachment) (api.Attachment, error)

AddProcessAttachment 添加流程实例附件。 @param ctx 上下文 @param processInstanceID 实例 ID @param attachment 附件 @return 附件 @return 添加错误

func (*Engine) AddProcessComment

func (e *Engine) AddProcessComment(ctx context.Context, processInstanceID, userID, message string) (api.Comment, error)

AddProcessComment 添加流程实例评论。 @param ctx 上下文 @param processInstanceID 实例 ID @param userID 作者 @param message 内容 @return 评论 @return 添加错误

func (*Engine) AddTaskCompletedHook

func (e *Engine) AddTaskCompletedHook(hook api.TaskHook)

AddTaskCompletedHook 注册任务完成全局钩子(TASK_COMPLETED)。 钩子按注册顺序在完成任务的命令内同步执行(历史结束行落库之前),任一钩子失败使命令失败回滚。 @param hook 钩子函数

func (*Engine) AddTaskCreatedHook

func (e *Engine) AddTaskCreatedHook(hook api.TaskHook)

AddTaskCreatedHook 注册任务创建全局钩子(TASK_CREATED)。 钩子按注册顺序在创建用户任务的命令内同步执行,任一钩子失败使命令失败回滚。 @param hook 钩子函数

func (*Engine) BackUserTaskToActivity

func (e *Engine) BackUserTaskToActivity(ctx context.Context, taskID, targetActivityID string) (string, error)

BackUserTaskToActivity 任意退回:把当前任务退回到目标活动,返回实际落位节点 ID。 对位 Java BackUserTaskCmd:可达性校验 → 子流程内外映射 + 特殊网关四分支 → 执行收集 → 迁移 → 补汇聚。 @param ctx 上下文 @param taskID 当前运行任务 ID @param targetActivityID 目标活动 ID @return 实际落位节点 ID @return 退回错误

func (*Engine) BatchMigrateProcessInstances

func (e *Engine) BatchMigrateProcessInstances(ctx context.Context, targetDefinitionID string, instanceIDs []string, activityMappings map[string]string) (api.Batch, error)

BatchMigrateProcessInstances 批量迁移流程实例并记录批次与分片。 与 Flowable 一致,批次与分片会持久化到批次表;本实现仅写入内存快照。 @param ctx 上下文 @param targetDefinitionID 目标流程定义 ID @param instanceIDs 流程实例 ID 列表 @param activityMappings 源活动 ID 到目标活动 ID @return 最终批次 @return 迁移错误

func (*Engine) ChangeActivityState

func (e *Engine) ChangeActivityState(ctx context.Context, executionID string, activityIDs []string) error

ChangeActivityState 将执行移动到新的活动(仅支持单目标活动)。 @param ctx 上下文 @param executionID 执行 ID @param activityIDs 目标活动 ID 列表 @return 迁移错误

func (*Engine) ChangePassword

func (e *Engine) ChangePassword(ctx context.Context, userID, oldPassword, newPassword string) error

ChangePassword 修改用户密码。 @param ctx 上下文 @param userID 用户 ID @param oldPassword 旧密码 @param newPassword 新密码 @return 修改错误

func (*Engine) ChangeProcessInstanceState

func (e *Engine) ChangeProcessInstanceState(ctx context.Context, processInstanceID string, activityIDs []string) error

ChangeProcessInstanceState 将实例根执行移动到新的活动。 @param ctx 上下文 @param processInstanceID 实例 ID @param activityIDs 目标活动 ID 列表 @return 迁移错误

func (*Engine) CheckPassword

func (e *Engine) CheckPassword(ctx context.Context, userID, password string) error

CheckPassword 校验用户密码。 @param ctx 上下文 @param userID 用户 ID @param password 密码 @return 校验错误

func (*Engine) Claim

func (e *Engine) Claim(ctx context.Context, taskID, userID string) error

Claim 签收任务。 @param ctx 上下文 @param taskID 任务 ID @param userID 签收人 @return 签收错误

func (*Engine) Close

func (e *Engine) Close(ctx context.Context) error

Close 关闭引擎。 @param ctx 关闭上下文 @return 关闭错误

func (*Engine) Complete

func (e *Engine) Complete(ctx context.Context, taskID string, req api.CompleteTaskRequest) error

Complete 完成任务。 @param ctx 上下文 @param taskID 任务 ID @param req 完成请求 @return 完成错误

func (*Engine) CompleteToTarget

func (e *Engine) CompleteToTarget(ctx context.Context, taskID, targetActivityID string, variables map[string]any) error

CompleteToTarget 直送(D2):办结当前任务并把执行迁移到目标活动继续。 对位 Java completeToTargetActivity 的伪造连线语义:任务完成历史保留,目标节点生成新任务, operationType=completeToTarget 变量标记直送语义供下游识别。 @param ctx 上下文 @param taskID 当前运行任务 ID @param targetActivityID 目标活动 ID @param variables 直送时写入的流程变量 @return 直送错误

func (*Engine) CreateGroup

func (e *Engine) CreateGroup(ctx context.Context, group api.Group) (api.Group, error)

CreateGroup 创建组。 @param ctx 上下文 @param group 组 @return 组 @return 创建错误

func (*Engine) CreateModel

func (e *Engine) CreateModel(ctx context.Context, req api.CreateModelRequest) (api.Model, error)

CreateModel 创建流程模型。 @param ctx 上下文 @param req 创建请求 @return 模型 @return 创建错误

func (*Engine) CreateProperty

func (e *Engine) CreateProperty(ctx context.Context, name, value string) error

CreateProperty 创建自定义引擎属性。 @param ctx 上下文 @param name 名称 @param value 值 @return 创建错误

func (*Engine) CreateRole

func (e *Engine) CreateRole(ctx context.Context, role api.Role) (api.Role, error)

CreateRole 创建角色。 @param ctx 上下文 @param role 角色 @return 角色 @return 创建错误

func (*Engine) CreateTask

func (e *Engine) CreateTask(ctx context.Context, req api.CreateTaskRequest) (api.Task, error)

CreateTask 创建独立任务。 @param ctx 上下文 @param req 创建请求 @return 任务 @return 创建错误

func (*Engine) CreateUser

func (e *Engine) CreateUser(ctx context.Context, user api.User) (api.User, error)

CreateUser 创建用户。 @param ctx 上下文 @param user 用户 @return 用户 @return 创建错误

func (*Engine) DMNService

func (e *Engine) DMNService() api.DMNService

DMNService 返回 DMN 服务。 @return DMN 服务

func (*Engine) Delegate

func (e *Engine) Delegate(ctx context.Context, taskID, userID string) error

Delegate 委派任务。 @param ctx 上下文 @param taskID 任务 ID @param userID 被委托人 @return 委派错误

func (*Engine) DeleteAllExecutionVariables

func (e *Engine) DeleteAllExecutionVariables(ctx context.Context, executionID string) error

DeleteAllExecutionVariables 清空执行局部变量。 @param ctx 上下文 @param executionID 执行 ID @return 删除错误

func (*Engine) DeleteAllInstanceVariables

func (e *Engine) DeleteAllInstanceVariables(ctx context.Context, processInstanceID string) error

DeleteAllInstanceVariables 清空流程实例变量。 @param ctx 上下文 @param processInstanceID 实例 ID @return 删除错误

func (*Engine) DeleteAllTaskVariables

func (e *Engine) DeleteAllTaskVariables(ctx context.Context, taskID string) error

DeleteAllTaskVariables 清空任务局部变量。 @param ctx 上下文 @param taskID 任务 ID @return 删除错误

func (*Engine) DeleteAttachment

func (e *Engine) DeleteAttachment(ctx context.Context, attachmentID string) error

DeleteAttachment 删除附件。 @param ctx 上下文 @param attachmentID 附件 ID @return 删除错误

func (*Engine) DeleteBatch

func (e *Engine) DeleteBatch(ctx context.Context, batchID string) error

DeleteBatch 删除批次及其全部分片。 @param ctx 上下文 @param batchID 批次 ID @return 删除错误

func (*Engine) DeleteCandidateGroup

func (e *Engine) DeleteCandidateGroup(ctx context.Context, taskID, groupID string) error

DeleteCandidateGroup 移除候选组。 @param ctx 上下文 @param taskID 任务 ID @param groupID 组 ID @return 删除错误

func (*Engine) DeleteCandidateUser

func (e *Engine) DeleteCandidateUser(ctx context.Context, taskID, userID string) error

DeleteCandidateUser 移除候选用户。 @param ctx 上下文 @param taskID 任务 ID @param userID 用户 ID @return 删除错误

func (*Engine) DeleteComment

func (e *Engine) DeleteComment(ctx context.Context, commentID string) error

DeleteComment 删除评论。 @param ctx 上下文 @param commentID 评论 ID @return 删除错误

func (*Engine) DeleteDeadLetterJob

func (e *Engine) DeleteDeadLetterJob(ctx context.Context, jobID string) error

DeleteDeadLetterJob 删除死信作业。 @param ctx 上下文 @param jobID 作业 ID @return 删除错误

func (e *Engine) DeleteDefinitionIdentityLink(ctx context.Context, definitionID, family, identityID string) error

DeleteDefinitionIdentityLink 删除候选发起人。 @param ctx 上下文 @param definitionID 流程定义 ID @param family users 或 groups @param identityID 用户或组 ID @return 删除错误

func (*Engine) DeleteDeployment

func (e *Engine) DeleteDeployment(ctx context.Context, deploymentID string, cascade bool) error

DeleteDeployment 删除部署。 @param ctx 上下文 @param deploymentID 部署 ID @param cascade 是否级联删除流程定义 @return 删除错误

func (*Engine) DeleteExecutionVariable

func (e *Engine) DeleteExecutionVariable(ctx context.Context, executionID, name string) error

DeleteExecutionVariable 删除执行局部变量。 @param ctx 上下文 @param executionID 执行 ID @param name 变量名 @return 删除错误

func (*Engine) DeleteGroup

func (e *Engine) DeleteGroup(ctx context.Context, groupID string) error

DeleteGroup 删除组。 @param ctx 上下文 @param groupID 组 ID @return 删除错误

func (*Engine) DeleteHistoricDetail

func (e *Engine) DeleteHistoricDetail(ctx context.Context, detailID string) error

DeleteHistoricDetail 删除历史变量明细。 @param ctx 上下文 @param detailID 明细 ID @return 删除错误

func (*Engine) DeleteHistoricProcessInstance

func (e *Engine) DeleteHistoricProcessInstance(ctx context.Context, processInstanceID string) error

DeleteHistoricProcessInstance 删除历史流程实例及关联记录。 @param ctx 上下文 @param processInstanceID 实例 ID @return 删除错误

func (*Engine) DeleteHistoricTaskInstance

func (e *Engine) DeleteHistoricTaskInstance(ctx context.Context, taskID string) error

DeleteHistoricTaskInstance 删除历史任务。 @param ctx 上下文 @param taskID 任务 ID @return 删除错误

func (*Engine) DeleteHistoricTaskLog

func (e *Engine) DeleteHistoricTaskLog(ctx context.Context, logID int64) error

DeleteHistoricTaskLog 删除任务日志。 @param ctx 上下文 @param logID 日志 ID @return 删除错误

func (*Engine) DeleteHistoricVariableInstance

func (e *Engine) DeleteHistoricVariableInstance(ctx context.Context, variableID string) error

DeleteHistoricVariableInstance 删除历史变量。 @param ctx 上下文 @param variableID 历史变量 ID @return 删除错误

func (e *Engine) DeleteInstanceIdentityLink(ctx context.Context, processInstanceID, family, identityID, linkType string) error

DeleteInstanceIdentityLink 删除流程实例身份链接。 @param ctx 上下文 @param processInstanceID 实例 ID @param family users 或 groups @param identityID 用户或组 ID @param linkType 链接类型 @return 删除错误

func (*Engine) DeleteJob

func (e *Engine) DeleteJob(ctx context.Context, jobID string) error

DeleteJob 删除可执行作业。 @param ctx 上下文 @param jobID 作业 ID @return 删除错误

func (*Engine) DeleteModel

func (e *Engine) DeleteModel(ctx context.Context, modelID string) error

DeleteModel 删除流程模型。 @param ctx 上下文 @param modelID 模型 ID @return 删除错误

func (*Engine) DeleteProcessInstance

func (e *Engine) DeleteProcessInstance(ctx context.Context, id, reason string) error

DeleteProcessInstance 删除流程实例。 @param ctx 上下文 @param id 实例 ID @param reason 删除原因 @return 删除错误

func (*Engine) DeleteProperty

func (e *Engine) DeleteProperty(ctx context.Context, name string) error

DeleteProperty 删除自定义引擎属性。 @param ctx 上下文 @param name 名称 @return 删除错误

func (*Engine) DeleteRole

func (e *Engine) DeleteRole(ctx context.Context, roleID string) error

DeleteRole 删除角色。 @param ctx 上下文 @param roleID 角色 ID @return 删除错误

func (*Engine) DeleteSuspendedJob

func (e *Engine) DeleteSuspendedJob(ctx context.Context, jobID string) error

DeleteSuspendedJob 删除挂起作业。 @param ctx 上下文 @param jobID 作业 ID @return 删除错误

func (*Engine) DeleteTask

func (e *Engine) DeleteTask(ctx context.Context, taskID string, cascadeHistory bool, deleteReason string) error

DeleteTask 删除独立任务及子任务。 @param ctx 上下文 @param taskID 任务 ID @param cascadeHistory 是否级联删除历史 @param deleteReason 删除原因 @return 删除错误

func (*Engine) DeleteTaskEvent

func (e *Engine) DeleteTaskEvent(ctx context.Context, taskID string, eventID int64) error

DeleteTaskEvent 删除任务事件。 @param ctx 上下文 @param taskID 任务 ID @param eventID 事件 ID @return 删除错误

func (*Engine) DeleteTaskVariable

func (e *Engine) DeleteTaskVariable(ctx context.Context, taskID, name string) error

DeleteTaskVariable 删除任务局部变量。 @param ctx 上下文 @param taskID 任务 ID @param name 变量名 @return 删除错误

func (*Engine) DeleteTimerJob

func (e *Engine) DeleteTimerJob(ctx context.Context, jobID string) error

DeleteTimerJob 删除定时器作业。 仅接受未挂起、未被移入可执行桶的定时器作业。 @param ctx 上下文 @param jobID 作业 ID @return 删除错误

func (*Engine) DeleteUser

func (e *Engine) DeleteUser(ctx context.Context, userID string) error

DeleteUser 删除用户。 @param ctx 上下文 @param userID 用户 ID @return 删除错误

func (*Engine) DeleteUserInfo

func (e *Engine) DeleteUserInfo(ctx context.Context, userID, key string) error

DeleteUserInfo 删除用户信息。 @param ctx 上下文 @param userID 用户 ID @param key 键 @return 删除错误

func (*Engine) DeleteVariable

func (e *Engine) DeleteVariable(ctx context.Context, processInstanceID, name string) error

DeleteVariable 删除流程实例变量。 @param ctx 上下文 @param processInstanceID 实例 ID @param name 变量名 @return 删除错误

func (*Engine) Deploy

func (e *Engine) Deploy(ctx context.Context, req api.DeploymentRequest) (api.Deployment, error)

Deploy 部署 BPMN 资源。 @param ctx 上下文 @param req 部署请求 @return 部署信息 @return 部署错误

func (*Engine) DoMoveActivity added in v0.1.2

func (e *Engine) DoMoveActivity(ctx context.Context, processInstanceID, fromActivityID, toActivityID string) error

DoMoveActivity 普通节点跳转(对位 Java ProcessesUtil#moveActivity:3526-3548)。 语义:实例存在且未挂起 → 来源活动上的活动执行迁移到目标活动(单执行场景与 Java moveActivityIdTo 等价;多条并行分支收拢涉及 PendingBranches 重算,显式拒绝); 迁移会取消来源分支的运行中任务并按引擎审计留痕。 @param ctx 上下文 @param processInstanceID 实例 ID @param fromActivityID 来源活动 ID @param toActivityID 目标活动 ID @return 迁移错误

func (*Engine) DoMoveExecution added in v0.1.2

func (e *Engine) DoMoveExecution(ctx context.Context, processInstanceID, toActivityID string) error

DoMoveExecution 执行迁移(对位 Java ProcessesUtil#moveExecution:3610-3632 moveExecutionToActivityId)。 无来源节点语义:把实例根执行迁移到目标活动;ChangeProcessInstanceState 已含 挂起拒绝/根执行定位/目标节点校验/清场续跑全链路。 @param ctx 上下文 @param processInstanceID 实例 ID @param toActivityID 目标活动 ID @return 迁移错误

func (*Engine) EngineInfo

func (e *Engine) EngineInfo(ctx context.Context) (map[string]any, error)

EngineInfo 返回引擎信息。 @param ctx 上下文 @return 引擎信息 @return 查询错误

func (*Engine) EvaluateConditions

func (e *Engine) EvaluateConditions(ctx context.Context, processInstanceID string) error

EvaluateConditions 显式求值流程实例的全部条件事件订阅。 实例不存在返回 404,实例已结束或已挂起返回 409。 @param ctx 上下文 @param processInstanceID 流程实例 ID @return 求值错误

func (*Engine) ExportHistoricRows

func (e *Engine) ExportHistoricRows(ctx context.Context) ([]flowablerow.Row, error)

ExportHistoricRows 导出历史流程、活动、任务与变量行。 @param ctx 上下文 @return 行列表 @return 导出错误

func (*Engine) ExportRows

func (e *Engine) ExportRows(ctx context.Context) ([]flowablerow.Row, error)

ExportRows 导出部署、流程定义与字节数组行,供按表仓储写入。 @param ctx 上下文 @return 行列表 @return 导出错误

func (*Engine) ExportRuntimeRows

func (e *Engine) ExportRuntimeRows(ctx context.Context) ([]flowablerow.Row, error)

ExportRuntimeRows 导出执行、任务与变量行。 @param ctx 上下文 @return 行列表 @return 导出错误

func (*Engine) FormService

func (e *Engine) FormService() api.FormService

FormService 返回表单服务。 @return 表单服务

func (*Engine) GetActiveActivityIDs

func (e *Engine) GetActiveActivityIDs(ctx context.Context, executionID string) ([]string, error)

GetActiveActivityIDs 返回执行及子执行的活动 ID。 @param ctx 上下文 @param executionID 执行 ID @return 活动 ID 列表 @return 查询错误

func (*Engine) GetAttachment

func (e *Engine) GetAttachment(ctx context.Context, attachmentID string) (api.Attachment, error)

GetAttachment 查询单个附件。 @param ctx 上下文 @param attachmentID 附件 ID @return 附件 @return 查询错误

func (*Engine) GetAttachmentContent

func (e *Engine) GetAttachmentContent(ctx context.Context, attachmentID string) ([]byte, error)

GetAttachmentContent 返回附件二进制内容。 @param ctx 上下文 @param attachmentID 附件 ID @return 内容 @return 查询错误

func (*Engine) GetBatch

func (e *Engine) GetBatch(ctx context.Context, batchID string) (api.Batch, error)

GetBatch 查询批处理作业。 @param ctx 上下文 @param batchID 批次 ID @return 批次 @return 查询错误

func (*Engine) GetBatchDocument

func (e *Engine) GetBatchDocument(ctx context.Context, batchID string) ([]byte, error)

GetBatchDocument 返回批次文档。 @param ctx 上下文 @param batchID 批次 ID @return 文档字节 @return 查询错误

func (*Engine) GetBatchPart

func (e *Engine) GetBatchPart(ctx context.Context, partID string) (api.BatchPart, error)

GetBatchPart 查询批处理分片。 @param ctx 上下文 @param partID 分片 ID @return 分片 @return 查询错误

func (*Engine) GetBatchPartDocument

func (e *Engine) GetBatchPartDocument(ctx context.Context, partID string) ([]byte, error)

GetBatchPartDocument 返回批次分片文档。 @param ctx 上下文 @param partID 分片 ID @return 文档字节 @return 查询错误

func (*Engine) GetBpmnModel

func (e *Engine) GetBpmnModel(ctx context.Context, definitionID string) (*model.BpmnModel, error)

GetBpmnModel 返回流程定义模型。 @param ctx 上下文 @param definitionID 流程定义 ID @return BPMN 模型 @return 查询错误

func (*Engine) GetComment

func (e *Engine) GetComment(ctx context.Context, commentID string) (api.Comment, error)

GetComment 查询单条评论。 @param ctx 上下文 @param commentID 评论 ID @return 评论 @return 查询错误

func (*Engine) GetDeadLetterJob

func (e *Engine) GetDeadLetterJob(ctx context.Context, jobID string) (api.JobInfo, error)

GetDeadLetterJob 查询死信作业。 @param ctx 上下文 @param jobID 作业 ID @return 作业信息 @return 查询错误

func (e *Engine) GetDefinitionIdentityLink(ctx context.Context, definitionID, family, identityID string) (api.IdentityLink, error)

GetDefinitionIdentityLink 查询单个候选发起人。 @param ctx 上下文 @param definitionID 流程定义 ID @param family users 或 groups @param identityID 用户或组 ID @return 链接 @return 查询错误

func (*Engine) GetDeployment

func (e *Engine) GetDeployment(ctx context.Context, deploymentID string) (api.Deployment, error)

GetDeployment 查询部署。 @param ctx 上下文 @param deploymentID 部署 ID @return 部署信息 @return 查询错误

func (*Engine) GetDeploymentResource

func (e *Engine) GetDeploymentResource(ctx context.Context, deploymentID, resourceName string) ([]byte, error)

GetDeploymentResource 返回部署资源内容。 @param ctx 上下文 @param deploymentID 部署 ID @param resourceName 资源名 @return 资源内容 @return 查询错误

func (*Engine) GetEventSubscription

func (e *Engine) GetEventSubscription(ctx context.Context, subscriptionID string) (api.EventSubscription, error)

GetEventSubscription 查询事件订阅。 @param ctx 上下文 @param subscriptionID 订阅 ID @return 订阅 @return 查询错误

func (*Engine) GetExecution

func (e *Engine) GetExecution(ctx context.Context, executionID string) (api.ExecutionInfo, error)

GetExecution 查询执行。 @param ctx 上下文 @param executionID 执行 ID @return 执行信息 @return 查询错误

func (*Engine) GetExecutionVariable

func (e *Engine) GetExecutionVariable(ctx context.Context, executionID, name string) (any, error)

GetExecutionVariable 返回执行可见变量。 @param ctx 上下文 @param executionID 执行 ID @param name 变量名 @return 变量值 @return 查询错误

func (*Engine) GetExecutionVariables

func (e *Engine) GetExecutionVariables(ctx context.Context, executionID string) (map[string]any, error)

GetExecutionVariables 返回执行可见变量。 @param ctx 上下文 @param executionID 执行 ID @return 变量快照 @return 查询错误

func (*Engine) GetGroup

func (e *Engine) GetGroup(ctx context.Context, groupID string) (api.Group, error)

GetGroup 查询组。 @param ctx 上下文 @param groupID 组 ID @return 组 @return 查询错误

func (*Engine) GetHistoricActivityInstance

func (e *Engine) GetHistoricActivityInstance(ctx context.Context, activityID string) (api.HistoricActivityInstance, error)

GetHistoricActivityInstance 查询历史活动。 @param ctx 上下文 @param activityID 历史活动 ID @return 历史活动 @return 查询错误

func (*Engine) GetHistoricDetail

func (e *Engine) GetHistoricDetail(ctx context.Context, detailID string) (api.HistoricDetail, error)

GetHistoricDetail 查询历史变量明细。 @param ctx 上下文 @param detailID 明细 ID @return 明细 @return 查询错误

func (*Engine) GetHistoricProcessInstance

func (e *Engine) GetHistoricProcessInstance(ctx context.Context, processInstanceID string) (api.HistoricProcessInstance, error)

GetHistoricProcessInstance 查询历史流程实例。 @param ctx 上下文 @param processInstanceID 实例 ID @return 历史实例 @return 查询错误

func (*Engine) GetHistoricTaskFormData

func (e *Engine) GetHistoricTaskFormData(ctx context.Context, taskID string) (api.FormData, error)

GetHistoricTaskFormData 返回历史任务表单。 @param ctx 上下文 @param taskID 任务 ID @return 表单数据 @return 查询错误

func (*Engine) GetHistoricTaskInstance

func (e *Engine) GetHistoricTaskInstance(ctx context.Context, taskID string) (api.HistoricTaskInstance, error)

GetHistoricTaskInstance 查询历史任务。 @param ctx 上下文 @param taskID 任务 ID @return 历史任务 @return 查询错误

func (*Engine) GetHistoricTaskVariableByName

func (e *Engine) GetHistoricTaskVariableByName(ctx context.Context, taskID, name string) (api.HistoricVariableInstance, error)

GetHistoricTaskVariableByName 按任务与变量名查询历史变量。 @param ctx 上下文 @param taskID 任务 ID @param name 变量名 @return 历史变量 @return 查询错误

func (*Engine) GetHistoricVariableByName

func (e *Engine) GetHistoricVariableByName(ctx context.Context, processInstanceID, name string) (api.HistoricVariableInstance, error)

GetHistoricVariableByName 按实例与变量名查询历史变量。 @param ctx 上下文 @param processInstanceID 实例 ID @param name 变量名 @return 历史变量 @return 查询错误

func (*Engine) GetHistoricVariableInstance

func (e *Engine) GetHistoricVariableInstance(ctx context.Context, variableID string) (api.HistoricVariableInstance, error)

GetHistoricVariableInstance 查询历史变量。 @param ctx 上下文 @param variableID 历史变量 ID @return 历史变量 @return 查询错误

func (*Engine) GetJob

func (e *Engine) GetJob(ctx context.Context, jobID string) (api.JobInfo, error)

GetJob 查询可执行作业。 @param ctx 上下文 @param jobID 作业 ID @return 作业信息 @return 查询错误

func (*Engine) GetModel

func (e *Engine) GetModel(ctx context.Context, modelID string) (api.Model, error)

GetModel 查询流程模型。 @param ctx 上下文 @param modelID 模型 ID @return 模型 @return 查询错误

func (*Engine) GetModelSource

func (e *Engine) GetModelSource(ctx context.Context, modelID string) ([]byte, error)

GetModelSource 返回模型编辑源。 @param ctx 上下文 @param modelID 模型 ID @return 源内容 @return 查询错误

func (*Engine) GetModelSourceExtra

func (e *Engine) GetModelSourceExtra(ctx context.Context, modelID string) ([]byte, error)

GetModelSourceExtra 返回模型扩展源码。 @param ctx 上下文 @param modelID 模型 ID @return 扩展源 @return 查询错误

func (*Engine) GetProcessDefinition

func (e *Engine) GetProcessDefinition(ctx context.Context, id string) (api.ProcessDefinition, error)

GetProcessDefinition 按 ID 查询流程定义。 @param ctx 上下文 @param id 流程定义 ID @return 流程定义 @return 查询错误

func (*Engine) GetProcessDefinitionByKey

func (e *Engine) GetProcessDefinitionByKey(ctx context.Context, key string) (api.ProcessDefinition, error)

GetProcessDefinitionByKey 按 Key 查询最新流程定义。 @param ctx 上下文 @param key 流程定义 Key @return 流程定义 @return 查询错误

func (*Engine) GetProcessDefinitionXML

func (e *Engine) GetProcessDefinitionXML(ctx context.Context, definitionID string) ([]byte, error)

GetProcessDefinitionXML 返回流程定义原始 XML。 @param ctx 上下文 @param definitionID 流程定义 ID @return XML 内容 @return 查询错误

func (*Engine) GetProcessInstance

func (e *Engine) GetProcessInstance(ctx context.Context, id string) (api.ProcessInstance, error)

GetProcessInstance 查询流程实例。 @param ctx 上下文 @param id 实例 ID @return 流程实例 @return 查询错误

func (*Engine) GetRole

func (e *Engine) GetRole(ctx context.Context, roleID string) (api.Role, error)

GetRole 查询角色。 @param ctx 上下文 @param roleID 角色 ID @return 角色 @return 查询错误

func (*Engine) GetStartFormData

func (e *Engine) GetStartFormData(ctx context.Context, processDefinitionID string) (api.FormData, error)

GetStartFormData 返回流程启动表单。 @param ctx 上下文 @param processDefinitionID 流程定义 ID @return 表单数据 @return 查询错误

func (*Engine) GetTableMetaData

func (e *Engine) GetTableMetaData(ctx context.Context, tableName string) (api.TableMetaData, error)

GetTableMetaData 返回表的列元数据。 @param ctx 上下文 @param tableName 表名 @return 列元数据 @return 查询错误

func (*Engine) GetTask

func (e *Engine) GetTask(ctx context.Context, id string) (api.Task, error)

GetTask 查询任务。 @param ctx 上下文 @param id 任务 ID @return 任务 @return 查询错误

func (*Engine) GetTaskEvent

func (e *Engine) GetTaskEvent(ctx context.Context, taskID string, eventID int64) (api.TaskEvent, error)

GetTaskEvent 查询单个任务事件。 @param ctx 上下文 @param taskID 任务 ID @param eventID 事件 ID @return 事件 @return 查询错误

func (*Engine) GetTaskFormData

func (e *Engine) GetTaskFormData(ctx context.Context, taskID string) (api.FormData, error)

GetTaskFormData 返回任务表单。 @param ctx 上下文 @param taskID 任务 ID @return 表单数据 @return 查询错误

func (*Engine) GetTaskVariable

func (e *Engine) GetTaskVariable(ctx context.Context, taskID, name string) (any, error)

GetTaskVariable 返回任务变量。 @param ctx 上下文 @param taskID 任务 ID @param name 变量名 @return 变量值 @return 查询错误

func (*Engine) GetTaskVariables

func (e *Engine) GetTaskVariables(ctx context.Context, taskID string) (map[string]any, error)

GetTaskVariables 返回任务可见变量。 @param ctx 上下文 @param taskID 任务 ID @return 变量快照 @return 查询错误

func (*Engine) GetUser

func (e *Engine) GetUser(ctx context.Context, userID string) (api.User, error)

GetUser 查询用户。 @param ctx 上下文 @param userID 用户 ID @return 用户 @return 查询错误

func (*Engine) GetUserInfo

func (e *Engine) GetUserInfo(ctx context.Context, userID string) (map[string]string, error)

GetUserInfo 返回用户信息键值。 @param ctx 上下文 @param userID 用户 ID @return 信息映射 @return 查询错误

func (*Engine) GetUserInfoEntries

func (e *Engine) GetUserInfoEntries(ctx context.Context, userID string) (map[string]*string, error)

GetUserInfoEntries 返回可空信息集合,调用方修改返回指针不会污染状态。 @param ctx 上下文 @param userID 用户标识 @return 包含空值键的独立映射 @return 查询错误

func (*Engine) GetUserInfoValue

func (e *Engine) GetUserInfoValue(ctx context.Context, userID, key string) (string, error)

GetUserInfoValue 返回单个用户信息。 @param ctx 上下文 @param userID 用户 ID @param key 键 @return 值 @return 查询错误

func (*Engine) GetUserPicture

func (e *Engine) GetUserPicture(ctx context.Context, userID string) ([]byte, string, error)

GetUserPicture 返回用户头像。 @param ctx 上下文 @param userID 用户 ID @return 图片数据 @return MIME 类型 @return 查询错误

func (*Engine) GetVariable

func (e *Engine) GetVariable(ctx context.Context, processInstanceID, name string) (any, error)

GetVariable 返回流程实例变量。 @param ctx 上下文 @param processInstanceID 实例 ID @param name 变量名 @return 变量值 @return 查询错误

func (*Engine) GetVariableInstance

func (e *Engine) GetVariableInstance(ctx context.Context, variableID string) (api.VariableInstance, error)

GetVariableInstance 查询运行时变量实例。 @param ctx 上下文 @param variableID 变量实例 ID @return 变量实例 @return 查询错误

func (*Engine) GetVariables

func (e *Engine) GetVariables(ctx context.Context, processInstanceID string) (map[string]any, error)

GetVariables 返回实例可见变量。 @param ctx 上下文 @param processInstanceID 实例 ID @return 变量快照 @return 查询错误

func (*Engine) HistoryService

func (e *Engine) HistoryService() api.HistoryService

HistoryService 返回历史服务。 @return 历史服务

func (*Engine) IdentityService

func (e *Engine) IdentityService() api.IdentityService

IdentityService 返回身份服务。 @return 身份服务

func (*Engine) ImportHistoricRows

func (e *Engine) ImportHistoricRows(ctx context.Context, rows []flowablerow.Row) error

ImportHistoricRows 从历史行恢复历史流程、活动、任务与变量。 @param ctx 上下文 @param rows 行列表 @return 导入错误

func (*Engine) ImportIdentityRows

func (e *Engine) ImportIdentityRows(ctx context.Context, rows []flowablerow.Row) error

ImportIdentityRows 在命令事务中导入标准身份行,遇到不支持的数据时拒绝发布部分状态。 @param ctx 请求上下文 @param rows 标准身份行 @return 列解码、引用或控制版本错误

func (*Engine) ImportRows

func (e *Engine) ImportRows(ctx context.Context, rows []flowablerow.Row) error

ImportRows 从 ACT 行恢复部署与流程定义。 @param ctx 上下文 @param rows 行列表 @return 导入错误

func (*Engine) ImportRuntimeRows

func (e *Engine) ImportRuntimeRows(ctx context.Context, rows []flowablerow.Row) error

ImportRuntimeRows 从运行时行恢复执行、任务与变量。 @param ctx 上下文 @param rows 行列表 @return 导入错误

func (*Engine) InjectUserTask

func (e *Engine) InjectUserTask(ctx context.Context, processInstanceID string, req api.InjectRequest) (api.Task, error)

InjectUserTask 在流程实例中注入一个动态用户任务。 动态任务独立于主流程执行,完成后不影响原有令牌。 @param ctx 上下文 @param processInstanceID 流程实例 ID @param req 注入请求 @return 任务 @return 注入错误

func (*Engine) InjectUserTaskAfter added in v0.1.2

func (e *Engine) InjectUserTaskAfter(ctx context.Context, processInstanceID string, req api.InsertUserTaskRequest) (api.ProcessDefinition, error)

InjectUserTaskAfter 为单个实例派生定义,在指定用户节点后增加节点并迁移该实例的定义引用。 @param ctx 上下文 @param processInstanceID 运行实例ID @param req 新节点属性和可选预期定义 @return 新派生定义,不会立即生成运行任务 @return 校验或持久化错误,失败时整个命令回滚

func (*Engine) IsMultiInstanceLastPerson added in v0.1.2

func (e *Engine) IsMultiInstanceLastPerson(ctx context.Context, taskID string) (bool, error)

IsMultiInstanceLastPerson 判断任务是否为其节点的最后一名待办成员(对位 Java ProcessesUtil#isMultiInstanceLastPerson:10437-10480)。 语义:

  1. 任务不存在 → false(Java task==null 口径,不报错);
  2. 节点非用户任务 → false;
  3. 用户任务无多实例配置 → true(非会签节点当前处理人即最后一个处理人员);
  4. 多实例带完成条件 → 按比例判定:Java 口径 split("=") 取比例值(去掉 "}"), (completed+1)/all 为整数除法,结果 >= proportion 时为 true;
  5. 多实例无完成条件 → false(Java fallthrough)。

@param ctx 上下文 @param taskID 任务 ID @return 是否为最后一名待办成员 @return 查询错误

func (*Engine) ListActivityInstances

func (e *Engine) ListActivityInstances(ctx context.Context, processInstanceID string) ([]api.ActivityInstance, error)

ListActivityInstances 返回运行中活动实例。 @param ctx 上下文 @param processInstanceID 流程实例 ID,空串表示全部 @return 活动实例列表 @return 查询错误

func (*Engine) ListAttachments

func (e *Engine) ListAttachments(ctx context.Context, taskID string) ([]api.Attachment, error)

ListAttachments 返回任务附件。 @param ctx 上下文 @param taskID 任务 ID @return 附件列表 @return 查询错误

func (*Engine) ListBatchParts

func (e *Engine) ListBatchParts(ctx context.Context, batchID string) ([]api.BatchPart, error)

ListBatchParts 返回批次的分片列表。 按开始时间升序、ID 升序稳定排序。 @param ctx 上下文 @param batchID 批次 ID @return 分片列表 @return 查询错误

func (*Engine) ListBatches

func (e *Engine) ListBatches(ctx context.Context) ([]api.Batch, error)

ListBatches 返回全部批处理作业。 按开始时间倒序、ID 升序稳定排序,保证相同开始时间下结果确定。 @param ctx 上下文 @return 批次列表 @return 查询错误

func (*Engine) ListComments

func (e *Engine) ListComments(ctx context.Context, taskID string) ([]api.Comment, error)

ListComments 返回任务评论。 @param ctx 上下文 @param taskID 任务 ID @return 评论列表 @return 查询错误

func (*Engine) ListDeadLetterJobs

func (e *Engine) ListDeadLetterJobs(ctx context.Context) ([]api.JobInfo, error)

ListDeadLetterJobs 返回死信作业。 @param ctx 上下文 @return 死信作业列表 @return 查询错误

func (*Engine) ListDecisionDefinitions

func (e *Engine) ListDecisionDefinitions(ctx context.Context, processDefinitionID string) ([]api.DecisionDefinition, error)

ListDecisionDefinitions 返回流程定义所在部署的决策定义。 @param ctx 上下文 @param processDefinitionID 流程定义 ID @return 决策定义列表,按资源名与决策 ID 排序 @return 查询错误

func (*Engine) ListDecisionTables

func (e *Engine) ListDecisionTables(ctx context.Context, processDefinitionID string) ([]api.DecisionTableDefinition, error)

ListDecisionTables 返回流程定义所在部署的决策表定义。 @param ctx 上下文 @param processDefinitionID 流程定义 ID @return 决策表定义列表,按资源名与决策 ID 排序 @return 查询错误

func (e *Engine) ListDefinitionIdentityLinks(ctx context.Context, definitionID string) ([]api.IdentityLink, error)

ListDefinitionIdentityLinks 返回流程定义候选发起人。 @param ctx 上下文 @param definitionID 流程定义 ID @return 链接列表 @return 查询错误

func (*Engine) ListDeploymentResources

func (e *Engine) ListDeploymentResources(ctx context.Context, deploymentID string) ([]string, error)

ListDeploymentResources 返回部署资源名列表。 @param ctx 上下文 @param deploymentID 部署 ID @return 资源名列表 @return 查询错误

func (*Engine) ListDeployments

func (e *Engine) ListDeployments(ctx context.Context) ([]api.Deployment, error)

ListDeployments 返回全部部署。 @param ctx 上下文 @return 部署列表 @return 查询错误

func (*Engine) ListEventSubscriptions

func (e *Engine) ListEventSubscriptions(ctx context.Context, processInstanceID string) ([]api.EventSubscription, error)

ListEventSubscriptions 返回事件订阅。 @param ctx 上下文 @param processInstanceID 流程实例 ID,空串表示全部 @return 订阅列表 @return 查询错误

func (*Engine) ListExecutions

func (e *Engine) ListExecutions(ctx context.Context, processInstanceID string) ([]api.ExecutionInfo, error)

ListExecutions 返回指定实例的执行树。 @param ctx 上下文 @param processInstanceID 流程实例 ID @return 执行列表 @return 查询错误

func (*Engine) ListFormDefinitions

func (e *Engine) ListFormDefinitions(ctx context.Context, processDefinitionID string) ([]api.FormDefinition, error)

ListFormDefinitions 返回流程定义所在部署的表单定义。 @param ctx 上下文 @param processDefinitionID 流程定义 ID @return 表单定义列表,按资源名排序 @return 查询错误

func (*Engine) ListGroups

func (e *Engine) ListGroups(ctx context.Context) ([]api.Group, error)

ListGroups 返回全部组。 @param ctx 上下文 @return 组列表 @return 查询错误

func (*Engine) ListHistoricActivityInstances

func (e *Engine) ListHistoricActivityInstances(ctx context.Context, processInstanceID string) ([]api.HistoricActivityInstance, error)

ListHistoricActivityInstances 返回历史活动实例。 @param ctx 上下文 @param processInstanceID 流程实例 ID @return 历史活动列表 @return 查询错误

func (*Engine) ListHistoricDetails

func (e *Engine) ListHistoricDetails(ctx context.Context, processInstanceID string) ([]api.HistoricDetail, error)

ListHistoricDetails 返回历史变量明细。 @param ctx 上下文 @param processInstanceID 实例 ID @return 明细列表 @return 查询错误

func (e *Engine) ListHistoricIdentityLinks(ctx context.Context, taskID string) ([]api.IdentityLink, error)

ListHistoricIdentityLinks 返回历史身份链接。 @param ctx 上下文 @param taskID 任务 ID @return 链接列表 @return 查询错误

func (e *Engine) ListHistoricProcessIdentityLinks(ctx context.Context, processInstanceID string) ([]api.IdentityLink, error)

ListHistoricProcessIdentityLinks 返回流程实例的历史身份链接。 @param ctx 上下文 @param processInstanceID 实例 ID @return 链接列表 @return 查询错误

func (*Engine) ListHistoricProcessInstances

func (e *Engine) ListHistoricProcessInstances(ctx context.Context) ([]api.HistoricProcessInstance, error)

ListHistoricProcessInstances 返回历史流程实例。 @param ctx 上下文 @return 历史实例列表 @return 查询错误

func (*Engine) ListHistoricTaskInstances

func (e *Engine) ListHistoricTaskInstances(ctx context.Context, processInstanceID string) ([]api.HistoricTaskInstance, error)

ListHistoricTaskInstances 返回历史任务实例。 @param ctx 上下文 @param processInstanceID 流程实例 ID @return 历史任务列表 @return 查询错误

func (*Engine) ListHistoricTaskLogs

func (e *Engine) ListHistoricTaskLogs(ctx context.Context, taskID string) ([]api.HistoricTaskLog, error)

ListHistoricTaskLogs 返回任务生命周期日志。 @param ctx 上下文 @param taskID 任务 ID @return 日志列表 @return 查询错误

func (*Engine) ListHistoricVariableInstances

func (e *Engine) ListHistoricVariableInstances(ctx context.Context, processInstanceID string) ([]api.HistoricVariableInstance, error)

ListHistoricVariableInstances 返回历史变量。 @param ctx 上下文 @param processInstanceID 实例 ID @return 历史变量列表 @return 查询错误

func (e *Engine) ListIdentityLinks(ctx context.Context, taskID string) ([]api.IdentityLink, error)

ListIdentityLinks 返回任务参与者关联。 @param ctx 上下文 @param taskID 任务 ID @return 关联列表 @return 查询错误

func (*Engine) ListInstanceComments

func (e *Engine) ListInstanceComments(ctx context.Context, processInstanceID string) ([]api.Comment, error)

ListInstanceComments 返回流程实例下的全部评论,含任务评论。 @param ctx 上下文 @param processInstanceID 实例 ID @return 评论列表 @return 查询错误

func (e *Engine) ListInstanceIdentityLinks(ctx context.Context, processInstanceID string) ([]api.IdentityLink, error)

ListInstanceIdentityLinks 返回流程实例身份链接。 @param ctx 上下文 @param processInstanceID 实例 ID @return 链接列表 @return 查询错误

func (*Engine) ListJobs

func (e *Engine) ListJobs(ctx context.Context) ([]api.JobInfo, error)

ListJobs 返回可执行作业。 @param ctx 上下文 @return 作业列表 @return 查询错误

func (*Engine) ListMembers

func (e *Engine) ListMembers(ctx context.Context, groupID string) ([]api.User, error)

ListMembers 返回组成员。 @param ctx 上下文 @param groupID 组 ID @return 用户列表 @return 查询错误

func (*Engine) ListModels

func (e *Engine) ListModels(ctx context.Context) ([]api.Model, error)

ListModels 返回全部流程模型。 @param ctx 上下文 @return 模型列表 @return 查询错误

func (*Engine) ListProcessAttachments

func (e *Engine) ListProcessAttachments(ctx context.Context, processInstanceID string) ([]api.Attachment, error)

ListProcessAttachments 返回流程实例附件。 @param ctx 上下文 @param processInstanceID 实例 ID @return 附件列表 @return 查询错误

func (*Engine) ListProcessComments

func (e *Engine) ListProcessComments(ctx context.Context, processInstanceID string) ([]api.Comment, error)

ListProcessComments 返回流程实例评论。 @param ctx 上下文 @param processInstanceID 实例 ID @return 评论列表 @return 查询错误

func (*Engine) ListProcessDefinitions

func (e *Engine) ListProcessDefinitions(ctx context.Context) ([]api.ProcessDefinition, error)

ListProcessDefinitions 返回流程定义列表。 @param ctx 上下文 @return 流程定义列表 @return 查询错误

func (*Engine) ListProcessInstances

func (e *Engine) ListProcessInstances(ctx context.Context) ([]api.ProcessInstance, error)

ListProcessInstances 返回运行中的流程实例。 @param ctx 上下文 @return 实例列表 @return 查询错误

func (*Engine) ListRoles

func (e *Engine) ListRoles(ctx context.Context) ([]api.Role, error)

ListRoles 返回全部角色。 @param ctx 上下文 @return 角色列表 @return 查询错误

func (*Engine) ListSubTasks

func (e *Engine) ListSubTasks(ctx context.Context, taskID string) ([]api.Task, error)

ListSubTasks 返回子任务。 @param ctx 上下文 @param taskID 父任务 ID @return 子任务列表 @return 查询错误

func (*Engine) ListTaskEvents

func (e *Engine) ListTaskEvents(ctx context.Context, taskID string) ([]api.TaskEvent, error)

ListTaskEvents 返回任务事件。 @param ctx 上下文 @param taskID 任务 ID @return 事件列表 @return 查询错误

func (*Engine) ListTasks

func (e *Engine) ListTasks(ctx context.Context, filter api.TaskFilter) (api.Page[api.Task], error)

ListTasks 按条件查询任务。 @param ctx 上下文 @param filter 查询条件 @return 分页结果 @return 查询错误

func (*Engine) ListUserGroups

func (e *Engine) ListUserGroups(ctx context.Context, userID string) ([]api.Group, error)

ListUserGroups 返回用户所属组。 @param ctx 上下文 @param userID 用户 ID @return 组列表 @return 查询错误

func (*Engine) ListUsers

func (e *Engine) ListUsers(ctx context.Context) ([]api.User, error)

ListUsers 返回全部用户。 @param ctx 上下文 @return 用户列表 @return 查询错误

func (*Engine) ListVariableInstances

func (e *Engine) ListVariableInstances(ctx context.Context, filter api.VariableInstanceFilter) ([]api.VariableInstance, error)

ListVariableInstances 返回运行时变量实例。 @param ctx 上下文 @param filter 查询条件 @return 变量实例列表 @return 查询错误

func (*Engine) ManagementService

func (e *Engine) ManagementService() api.ManagementService

ManagementService 返回管理服务。 @return 管理服务

func (*Engine) MessageEventReceived

func (e *Engine) MessageEventReceived(ctx context.Context, messageName string, variables []api.Variable) (int, error)

MessageEventReceived 投递消息,触发一个匹配订阅。 @param ctx 上下文 @param messageName 消息名 @param variables 变量 @return 触发数量 @return 投递错误

func (*Engine) MessageEventReceivedForExecution

func (e *Engine) MessageEventReceivedForExecution(ctx context.Context, executionID, messageName string, variables []api.Variable) error

MessageEventReceivedForExecution 向指定执行投递消息。 @param ctx 上下文 @param executionID 执行 ID @param messageName 消息名 @param variables 变量 @return 投递错误

func (*Engine) MigrateProcessInstance

func (e *Engine) MigrateProcessInstance(ctx context.Context, req api.MigrationRequest) error

MigrateProcessInstance 将运行中实例迁移到目标流程定义。 @param ctx 上下文 @param req 迁移请求 @return 迁移错误

func (*Engine) MoveDeadLetterJobToExecutable

func (e *Engine) MoveDeadLetterJobToExecutable(ctx context.Context, jobID string, retries int) error

MoveDeadLetterJobToExecutable 将死信作业恢复为可执行作业。 @param ctx 上下文 @param jobID 作业 ID @param retries 恢复后的重试次数 @return 恢复错误

func (*Engine) MoveTimerJobToExecutable

func (e *Engine) MoveTimerJobToExecutable(ctx context.Context, jobID string) error

MoveTimerJobToExecutable 将定时器作业移入可执行作业桶。 作业保留原处理器类型,仅不再作为定时器参与到期调度。 @param ctx 上下文 @param jobID 作业 ID @return 移动错误

func (*Engine) PersistDiff

func (e *Engine) PersistDiff(ctx context.Context, repository *flowablerow.Repository, previous []flowablerow.Row) error

PersistDiff 将当前快照相对旧快照的增量写入行仓储。 @param ctx 上下文 @param repository 行仓储 @param previous 旧快照行 @return 写入错误

func (*Engine) PersistSnapshot

func (e *Engine) PersistSnapshot(ctx context.Context, repository *flowablerow.Repository) error

PersistSnapshot 将完整引擎快照写入行仓储。 写入采用"先删后插",应在事务中调用。 @param ctx 上下文 @param repository 行仓储 @return 写入错误

func (*Engine) Properties

func (e *Engine) Properties(ctx context.Context) (map[string]string, error)

Properties 返回引擎属性。 属性映射 ACT_GE_PROPERTY 的常用键,并附带引擎运行信息。 @param ctx 上下文 @return 属性映射 @return 查询错误

func (*Engine) QueryHistoricActivityInstances

func (e *Engine) QueryHistoricActivityInstances(ctx context.Context, filter api.HistoricActivityInstanceFilter) (api.Page[api.HistoricActivityInstance], error)

QueryHistoricActivityInstances 按条件分页查询历史活动。 行仓储模式下等值与时间条件可下推 SQL;不满足下推条件时回退内存过滤,语义一致。 @param ctx 上下文 @param filter 查询条件 @return 分页历史活动 @return 查询错误

func (*Engine) QueryHistoricProcessInstances

func (e *Engine) QueryHistoricProcessInstances(ctx context.Context, filter api.HistoricProcessInstanceFilter) (api.Page[api.HistoricProcessInstance], error)

QueryHistoricProcessInstances 按条件分页查询历史实例。 行仓储模式下等值与时间条件可下推 SQL;不满足下推条件时回退内存过滤,语义一致。 @param ctx 上下文 @param filter 查询条件 @return 分页历史实例 @return 查询错误

func (*Engine) QueryHistoricTaskInstances

func (e *Engine) QueryHistoricTaskInstances(ctx context.Context, filter api.HistoricTaskInstanceFilter) (api.Page[api.HistoricTaskInstance], error)

QueryHistoricTaskInstances 按条件分页查询历史任务。 行仓储模式下等值与时间条件可下推 SQL;不满足下推条件时回退内存过滤,语义一致。 @param ctx 上下文 @param filter 查询条件 @return 分页历史任务 @return 查询错误

func (*Engine) QueryHistoricVariableInstances

func (e *Engine) QueryHistoricVariableInstances(ctx context.Context, filter api.HistoricVariableInstanceFilter) (api.Page[api.HistoricVariableInstance], error)

QueryHistoricVariableInstances 按条件分页查询历史变量。 行仓储模式下等值条件可下推 SQL;不满足下推条件时回退内存过滤,语义一致。 ACT_HI_VARINST 未持久化租户列,因此任何租户作用域(生效租户非空或存在非默认租户历史)一律回退内存。 @param ctx 上下文 @param filter 查询条件 @return 分页历史变量 @return 查询错误

func (*Engine) QueryProcessInstances

func (e *Engine) QueryProcessInstances(ctx context.Context, filter api.ProcessInstanceFilter) (api.Page[api.ProcessInstance], error)

QueryProcessInstances 按条件分页查询运行中实例。 行仓储模式下等值与时间条件可下推 SQL;不满足下推条件时回退内存过滤,语义一致。 @param ctx 上下文 @param filter 查询条件 @return 分页实例 @return 查询错误

func (*Engine) QueryTableData

func (e *Engine) QueryTableData(ctx context.Context, tableName string, start, size int, sortColumn, order string) (api.Page[map[string]any], error)

QueryTableData 分页查询表数据。 行数据来源于引擎快照,未写入的列以 null 补齐。 @param ctx 上下文 @param tableName 表名 @param start 偏移 @param size 每页数量 @param sortColumn 排序列 @param order 排序方向 @return 分页数据 @return 查询错误

func (*Engine) ReactivateProcessInstance

func (e *Engine) ReactivateProcessInstance(ctx context.Context, historicProcessInstanceID, targetActivityID, operator string) error

ReactivateProcessInstance 历史实例复活:按历史实例重建运行实例并可指定落位活动。 对位 Java ReactivateProcessInstanceCmd:历史行 endTime/deleteReason/duration 清空复位, 变量按历史变量创建时间升序覆盖重建,initiator 重写为操作人,落位活动为空时回开始事件。 @param ctx 上下文 @param historicProcessInstanceID 历史实例 ID @param targetActivityID 落位活动 ID,空串表示回开始事件后首个用户任务 @param operator 操作人(重写发起人) @return 复活错误

func (*Engine) RegisterDelegate

func (e *Engine) RegisterDelegate(name string, delegate Delegate)

RegisterDelegate 注册服务任务委托。 @param name 委托名 @param delegate 委托函数

func (*Engine) RegisterExecutionListener

func (e *Engine) RegisterExecutionListener(name string, listener ExecutionListener)

RegisterExecutionListener 注册 BPMN 执行监听器。 @param name 监听器名(class/delegateExpression) @param listener 监听器

func (*Engine) RegisterExecutionListenerHook

func (e *Engine) RegisterExecutionListenerHook(name string, hook api.ExecutionListenerHook)

RegisterExecutionListenerHook 注册扩展执行监听器(api.ExecutionListenerHook 控制接口版)。 与 RegisterExecutionListener 共用监听器调用点:BPMN class/delegateExpression 名相同时 扩展监听器优先生效。监听器在命令事务内同步执行,返回错误使命令整体回滚。 @param name 监听器名(BPMN class/delegateExpression 注册名) @param hook 监听器钩子

func (*Engine) RegisterTaskListener

func (e *Engine) RegisterTaskListener(name string, listener api.TaskListener)

RegisterTaskListener 注册 BPMN 任务监听器。 @param name 监听器名(class/delegateExpression) @param listener 监听器

func (*Engine) RemoveMembership

func (e *Engine) RemoveMembership(ctx context.Context, userID, groupID string) error

RemoveMembership 移除成员关系。 @param ctx 上下文 @param userID 用户 ID @param groupID 组 ID @return 移除错误

func (*Engine) RepositoryService

func (e *Engine) RepositoryService() api.RepositoryService

RepositoryService 返回仓库服务。 @return 仓库服务

func (*Engine) RescheduleTimerJob

func (e *Engine) RescheduleTimerJob(ctx context.Context, jobID, dueDate string) error

RescheduleTimerJob 修改定时器作业的到期时间。 @param ctx 上下文 @param jobID 作业 ID @param dueDate RFC3339 到期时间 @return 修改错误

func (*Engine) ResetProcess

func (e *Engine) ResetProcess(ctx context.Context, processInstanceID, operator string) error

ResetProcess 重置流程(软):清场全部活动任务并把全部执行迁回开始事件的首个出线目标。 对位 Java doResetProcess;next_activity 等外围数据由 workflow 层清理,引擎只管状态。 @param ctx 上下文 @param processInstanceID 实例 ID @param operator 操作人(业务操作记录由 workflow 层落库,引擎不消费) @return 重置错误

func (*Engine) Resolve

func (e *Engine) Resolve(ctx context.Context, taskID, userID string) error

Resolve 处理委派任务,将处理人恢复为所有者。 @param ctx 上下文 @param taskID 任务 ID @param userID 操作人,非空时必须为所有者 @return 处理错误

func (*Engine) ResolveWithVariables added in v0.1.2

func (e *Engine) ResolveWithVariables(ctx context.Context, taskID, userID string, variables []api.Variable) error

ResolveWithVariables 处理委派任务并同步写入任务局部变量(对位 Activiti resolveTask(taskId, variables), Java 契约见 ProcessesUtil#resolveTask:2318;宿主桥接此前静默丢弃 variables,本命令补齐该端口)。 校验链与 Resolve 一致:任务存在 → 租户 → 实例未挂起 → 委派状态 → 所有者校验; 局部变量在归还状态变更前写入同一命令事务,任一步失败整体回滚(不产生半写入)。 @param ctx 上下文 @param taskID 任务 ID @param userID 操作人,非空时必须为所有者 @param variables 任务局部变量集合,可空 @return 处理错误

func (*Engine) RestoreRows

func (e *Engine) RestoreRows(ctx context.Context, rows []flowablerow.Row) error

RestoreRows 从行仓储恢复完整引擎状态。 @param ctx 上下文 @param rows 行列表 @return 恢复错误

func (*Engine) RollbackTask

func (e *Engine) RollbackTask(ctx context.Context, taskID, assignee string) error

RollbackTask 撤回:把已完成的当前任务撤回到待办状态,删除其后继任务与历史。 对位 Java RollbackCmd + DefaultRollbackStrategyFactoryBean 策略族:工厂判定后直调内部函数。 @param ctx 上下文 @param taskID 已完成任务的 ID(历史任务 ID) @param assignee 撤回后任务的办理人,空串取历史任务办理人 @return 撤回错误

func (*Engine) RunDueJobs

func (e *Engine) RunDueJobs(ctx context.Context) (int, error)

RunDueJobs 执行全部到期作业。 每个作业独立事务,失败只影响该作业。 @param ctx 上下文 @return 执行数量 @return 执行错误

func (*Engine) RuntimeService

func (e *Engine) RuntimeService() api.RuntimeService

RuntimeService 返回运行时服务。 @return 运行时服务

func (*Engine) SetAttachmentContent

func (e *Engine) SetAttachmentContent(ctx context.Context, attachmentID string, data []byte) error

SetAttachmentContent 设置附件二进制内容。 @param ctx 上下文 @param attachmentID 附件 ID @param data 内容 @return 设置错误

func (*Engine) SetExecutionVariable

func (e *Engine) SetExecutionVariable(ctx context.Context, executionID, name string, value any) error

SetExecutionVariable 设置执行局部变量。 @param ctx 上下文 @param executionID 执行 ID @param name 变量名 @param value 变量值 @return 设置错误

func (*Engine) SetJobRetries

func (e *Engine) SetJobRetries(ctx context.Context, jobID string, retries int) error

SetJobRetries 设置作业重试次数。 @param ctx 上下文 @param jobID 作业 ID @param retries 重试次数 @return 设置错误

func (*Engine) SetModelSource

func (e *Engine) SetModelSource(ctx context.Context, modelID string, source []byte) error

SetModelSource 设置模型编辑源。 @param ctx 上下文 @param modelID 模型 ID @param source 源内容 @return 设置错误

func (*Engine) SetModelSourceExtra

func (e *Engine) SetModelSourceExtra(ctx context.Context, modelID string, source []byte) error

SetModelSourceExtra 设置模型扩展源码。 @param ctx 上下文 @param modelID 模型 ID @param source 扩展源 @return 设置错误

func (*Engine) SetTaskVariable

func (e *Engine) SetTaskVariable(ctx context.Context, taskID, name string, value any) error

SetTaskVariable 设置任务局部变量。 @param ctx 上下文 @param taskID 任务 ID @param name 变量名 @param value 变量值 @return 设置错误

func (*Engine) SetUserInfo

func (e *Engine) SetUserInfo(ctx context.Context, userID, key, value string) error

SetUserInfo 设置用户信息。 @param ctx 上下文 @param userID 用户 ID @param key 键 @param value 值 @return 设置错误

func (*Engine) SetUserPicture

func (e *Engine) SetUserPicture(ctx context.Context, userID string, data []byte, mimeType string) error

SetUserPicture 设置用户头像。 @param ctx 上下文 @param userID 用户 ID @param data 图片数据 @param mimeType MIME 类型 @return 设置错误

func (*Engine) SetUserRoles

func (e *Engine) SetUserRoles(ctx context.Context, userID string, roles []string) error

SetUserRoles 设置用户角色。 @param ctx 上下文 @param userID 用户 ID @param roles 角色列表 @return 设置错误

func (*Engine) SetVariable

func (e *Engine) SetVariable(ctx context.Context, processInstanceID, name string, value any) error

SetVariable 设置流程实例变量。 @param ctx 上下文 @param processInstanceID 实例 ID @param name 变量名 @param value 变量值 @return 设置错误

func (*Engine) SetVariablesAsync

func (e *Engine) SetVariablesAsync(ctx context.Context, request api.AsyncVariableRequest) error

SetVariablesAsync 在单次命令事务中验证整批变量并创建持久作业,不提前写入变量。 @param ctx 请求上下文 @param request 目标作用域、变量及创建更新约束 @return 验证或持久化错误

func (*Engine) SignalEventReceived

func (e *Engine) SignalEventReceived(ctx context.Context, signalName string, variables []api.Variable) (int, error)

SignalEventReceived 广播信号,触发全部匹配订阅。 @param ctx 上下文 @param signalName 信号名 @param variables 变量 @return 触发数量 @return 投递错误

func (*Engine) SignalEventReceivedForExecution

func (e *Engine) SignalEventReceivedForExecution(ctx context.Context, executionID, signalName string, variables []api.Variable) error

SignalEventReceivedForExecution 向指定执行投递信号。 @param ctx 上下文 @param executionID 执行 ID @param signalName 信号名 @param variables 变量 @return 投递错误

func (*Engine) SnapshotRows

func (e *Engine) SnapshotRows(ctx context.Context) ([]flowablerow.Row, error)

SnapshotRows 返回完整引擎快照行。 @param ctx 上下文 @return 行列表 @return 导出错误

func (*Engine) StartProcessInstance

func (e *Engine) StartProcessInstance(ctx context.Context, req api.StartRequest) (api.ProcessInstance, error)

StartProcessInstance 启动流程实例。 @param ctx 上下文 @param req 启动请求 @return 流程实例 @return 启动错误

func (*Engine) StopProcessToEvent

func (e *Engine) StopProcessToEvent(ctx context.Context, processInstanceID string) error

StopProcessToEvent 软终止(G10):全部活动执行迁至首个正常结束事件走完,保留 end 事件历史。 对位 Java doStopProcessByTaskId 的软终止语义;挂起实例拒绝。 @param ctx 上下文 @param processInstanceID 实例 ID @return 终止错误

func (*Engine) SubmitTaskFormData

func (e *Engine) SubmitTaskFormData(ctx context.Context, taskID string, values map[string]any) error

SubmitTaskFormData 提交任务表单并完成任务。 @param ctx 上下文 @param taskID 任务 ID @param values 字段值 @return 提交错误

func (*Engine) SuspendProcessDefinition

func (e *Engine) SuspendProcessDefinition(ctx context.Context, definitionID string, includeInstances bool) error

SuspendProcessDefinition 挂起流程定义。 @param ctx 上下文 @param definitionID 流程定义 ID @param includeInstances 是否同时挂起实例 @return 挂起错误

func (*Engine) SuspendProcessInstance

func (e *Engine) SuspendProcessInstance(ctx context.Context, processInstanceID string) error

SuspendProcessInstance 挂起流程实例。 @param ctx 上下文 @param processInstanceID 实例 ID @return 挂起错误

func (*Engine) TableCount

func (e *Engine) TableCount(ctx context.Context) (map[string]int64, error)

TableCount 返回各 ACT_* 表的行数。 @param ctx 上下文 @return 表名到行数 @return 查询错误

func (*Engine) TaskService

func (e *Engine) TaskService() api.TaskService

TaskService 返回任务服务。 @return 任务服务

func (*Engine) TriggerExecution

func (e *Engine) TriggerExecution(ctx context.Context, executionID string, variables []api.Variable) error

TriggerExecution 触发等待中的执行(无事件定义的接收任务/中间捕获事件)。 @param ctx 上下文 @param executionID 执行 ID @param variables 写入变量 @return 触发错误

func (*Engine) TriggerExecutionWithTransient

func (e *Engine) TriggerExecutionWithTransient(ctx context.Context, executionID string, variables, transientVariables []api.Variable) error

TriggerExecutionWithTransient 触发等待中的执行并写入瞬态变量。 @param ctx 上下文 @param executionID 执行 ID @param variables 持久变量 @param transientVariables 瞬态变量 @return 触发错误

func (*Engine) UpdateGroup

func (e *Engine) UpdateGroup(ctx context.Context, group api.Group) (api.Group, error)

UpdateGroup 更新组。 @param ctx 上下文 @param group 组 @return 组 @return 更新错误

func (*Engine) UpdateModel

func (e *Engine) UpdateModel(ctx context.Context, modelID string, update api.ModelUpdate) (api.Model, error)

UpdateModel 更新流程模型。 @param ctx 上下文 @param modelID 模型 ID @param update 更新内容 @return 更新后的模型 @return 更新错误

func (*Engine) UpdatePassword

func (e *Engine) UpdatePassword(ctx context.Context, userID, newPassword string) error

UpdatePassword 重置用户密码。 @param ctx 上下文 @param userID 用户 ID @param newPassword 新密码 @return 更新错误

func (*Engine) UpdateProcessInstance

func (e *Engine) UpdateProcessInstance(ctx context.Context, id string, update api.ProcessInstanceUpdate) (api.ProcessInstance, error)

UpdateProcessInstance 在同一命令事务内修改实例元数据、签收身份链接及历史。 @param ctx 请求上下文 @param id 实例标识 @param update 可选属性或签收请求 @return 更新后的实例 @return 定位、冲突或持久化错误

func (*Engine) UpdateProperty

func (e *Engine) UpdateProperty(ctx context.Context, name, value string) error

UpdateProperty 更新自定义引擎属性。 @param ctx 上下文 @param name 名称 @param value 值 @return 更新错误

func (*Engine) UpdateRole

func (e *Engine) UpdateRole(ctx context.Context, role api.Role) (api.Role, error)

UpdateRole 更新角色。 @param ctx 上下文 @param role 角色 @return 角色 @return 更新错误

func (*Engine) UpdateTask

func (e *Engine) UpdateTask(ctx context.Context, taskID string, update api.TaskUpdate) (api.Task, error)

UpdateTask 更新任务属性。 @param ctx 上下文 @param taskID 任务 ID @param update 更新内容 @return 更新后的任务 @return 更新错误

func (*Engine) UpdateUser

func (e *Engine) UpdateUser(ctx context.Context, user api.User) (api.User, error)

UpdateUser 更新用户资料与角色。 @param ctx 上下文 @param user 用户 @return 用户 @return 更新错误

func (*Engine) ValidateMigration

func (e *Engine) ValidateMigration(ctx context.Context, req api.MigrationRequest) ([]string, error)

ValidateMigration 校验实例迁移,不修改状态。 @param ctx 上下文 @param req 迁移请求 @return 校验消息,空列表表示可迁移 @return 查询错误

func (*Engine) WorkflowExtService

func (e *Engine) WorkflowExtService() api.WorkflowExtService

WorkflowExtService 返回 workflow 二次封装扩展服务。 @return 扩展服务

type Execution

type Execution struct {
	// contains filtered or unexported fields
}

Execution 是暴露给委托与执行监听器的执行上下文。

func (*Execution) ActivityID

func (e *Execution) ActivityID() string

ActivityID 返回当前活动 ID。 @return 活动 ID

func (*Execution) GetVariable

func (e *Execution) GetVariable(name string) (any, bool)

GetVariable 按作用域链读取变量。 @param name 变量名 @return 变量值 @return 是否存在

func (*Execution) ProcessInstanceID

func (e *Execution) ProcessInstanceID() string

ProcessInstanceID 返回流程实例 ID。 @return 实例 ID

func (*Execution) SetVariable

func (e *Execution) SetVariable(name string, value any)

SetVariable 设置变量。 @param name 变量名 @param value 变量值

func (*Execution) SetVariableLocal

func (e *Execution) SetVariableLocal(name string, value any)

SetVariableLocal 设置当前作用域变量。 @param name 变量名 @param value 变量值

type ExecutionListener

type ExecutionListener func(ctx context.Context, execution *Execution) error

ExecutionListener 是 BPMN 执行监听器。 监听器在命令事务内同步执行,返回错误会使整个命令回滚。

type SpecialGatewayBlock

type SpecialGatewayBlock struct {
	GatewayID string          // 网关基础 ID(剥去 _begin 后缀)
	Elements  map[string]bool // 块内元素 ID 集合(含 _begin 与 _end)
}

SpecialGatewayBlock 描述一个 _begin/_end 特殊网关块。

func SpecialGatewayElements

func SpecialGatewayElements(process *model.Process) []SpecialGatewayBlock

SpecialGatewayElements 识别流程及嵌套子流程中的 _begin/_end 特殊网关块(G3)。 对位 Java FlowUtils.getSpecialGatewayElements;返回按包含元素数降序排列(外层块在前)。 @param process 流程 @return 网关块列表,外层在前

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL