Activity服务类-8 RuntimeService服务类
一共89个接口
1.启动流程实例(20个方法)
//使用给定的键在流程定义的最新版本中启动一个新的流程实例。
ProcessInstance startProcessInstanceByKey(String processDefinitionKey);
//同上
ProcessInstance startProcessInstanceByKey(String processDefinitionKey, String businessKey);
//同上
ProcessInstance startProcessInstanceByKey(String processDefinitionKey, Map<String, Object> variables);
//同上
ProcessInstance startProcessInstanceByKey(String processDefinitionKey, String businessKey, Map<String, Object> variables);
//类似于{ @link # startProcessInstanceByKey(String)},但是使用一个特定的租户标识符。
ProcessInstance startProcessInstanceByKeyAndTenantId(String processDefinitionKey, String tenantId);
//类似于{ @link # startProcessInstanceByKey(String String)},但是使用一个特定的租户标识符。
ProcessInstance startProcessInstanceByKeyAndTenantId(String processDefinitionKey, String businessKey, String tenantId);
//类似于{ @link # startProcessInstanceByKey(String Map)},但是使用一个特定的租户标识符。
ProcessInstance startProcessInstanceByKeyAndTenantId(String processDefinitionKey, Map<String, Object> variables, String tenantId);
//类似于{ @link # startProcessInstanceByKey(String String Map)},但是使用一个特定的租户标识符。
ProcessInstance startProcessInstanceByKeyAndTenantId(String processDefinitionKey, String businessKey, Map<String, Object> variables, String tenantId);
//使用给定的id在流程定义的精确指定版本中启动一个新的流程实例。
ProcessInstance startProcessInstanceById(String processDefinitionId);
//同上
ProcessInstance startProcessInstanceById(String processDefinitionId, String businessKey);
//同上
ProcessInstance startProcessInstanceById(String processDefinitionId, Map<String, Object> variables);
//同上
ProcessInstance startProcessInstanceById(String processDefinitionId, String businessKey, Map<String, Object> variables);
//表示接收到消息的流程引擎并启动一个新的{@link ProcessInstance}。
ProcessInstance startProcessInstanceByMessage(String messageName);
//类似于{ @link RuntimeService # startProcessInstanceByMessage(String)},但是有租户上下文。
ProcessInstance startProcessInstanceByMessageAndTenantId(String messageName, String tenantId);
//表示接收到消息的流程引擎并启动一个新的{@link ProcessInstance}。
ProcessInstance startProcessInstanceByMessage(String messageName, String businessKey);
//类似于{ @link RuntimeService # startProcessInstanceByMessage(String,String)},但是有租户上下文。
ProcessInstance startProcessInstanceByMessageAndTenantId(String messageName, String businessKey, String tenantId);
//表示接收到消息的流程引擎并启动一个新的{@link ProcessInstance}。
ProcessInstance startProcessInstanceByMessage(String messageName, Map<String, Object> processVariables);
//类似于{ @link RuntimeService # startProcessInstanceByMessage(String,Map)},但是有租户上下文。
ProcessInstance startProcessInstanceByMessageAndTenantId(String messageName, Map<String, Object> processVariables, String tenantId);
//表示接收到消息的流程引擎并启动一个新的{@link ProcessInstance}。
ProcessInstance startProcessInstanceByMessage(String messageName, String businessKey, Map<String, Object> processVariables);
//类似于{ @link RuntimeService # startProcessInstanceByMessage(String,String,Map)},但是有租户上下文。
ProcessInstance startProcessInstanceByMessageAndTenantId(String messageName, String businessKey, Map<String, Object> processVariables, String tenantId);
2.删除流程实例(1个方法)
//删除现有的运行时流程实例。
void deleteProcessInstance(String processInstanceId, String deleteReason);
3.查找活动id(1个方法)
//查找在活动中等待的所有执行的活动id。
这是一个列表,因为单个活动可以多次活动。
List<String> getActiveActivityIds(String executionId);
4.添加外部触发器(2个方法)
//将一个外部触发器发送到正在执行的活动实例中。
void signal(String executionId);
//同上
void signal(String executionId, Map<String, Object> processVariables);
5.更新业务秘钥(1个方法)
//更新提供的流程实例的业务密钥。
void updateBusinessKey(String processInstanceId, String businessKey);
6.用户(用户组)的链接标识操作(添加4个,删除4个,获取1个)
//涉及一个具有流程实例的用户。
身份链接的类型由给定的身份链接类型定义。
void addUserIdentityLink(String processInstanceId, String userId, String identityLinkType);
//涉及一个具有流程实例的用户组。
身份链接的类型由给定的身份链接类型定义。
void addGroupIdentityLink(String processInstanceId, String groupId, String identityLinkType);
//{@link #addUserIdentityLink(String、String、String)}的便利简写;
有一个类型{ @link IdentityLinkType #候选人}
void addParticipantUser(String processInstanceId, String userId);
//{@link #addGroupIdentityLink(String, String, String)}的遍历简写
void addParticipantGroup(String processInstanceId, String groupId);
//{@link #deleteUserIdentityLink(String, String, String)}的遍历简写
void deleteParticipantUser(String processInstanceId, String userId);
//{@link #deleteGroupIdentityLink(String, String, String)}的遍历简写
void deleteParticipantGroup(String processInstanceId, String groupId);
//删除用户与给定身份链接类型的流程实例之间的关联。
void deleteUserIdentityLink(String processInstanceId, String userId, String identityLinkType);
//删除一个组与给定的标识链接类型的流程实例之间的关联。
void deleteGroupIdentityLink(String processInstanceId, String groupId, String identityLinkType);
//检索与给定流程实例关联的{@link IdentityLink}。
这样的{@link IdentityLink}通知某个用户是如何参与流程实例的。
List<IdentityLink> getIdentityLinksForProcessInstance(String instanceId);
7.获取变量(所有变量(包含父范围的4个,不包含父范围的3个),给定变量(包含父范围的3个,不包含父范围的3个)单个变量(3个))
//从给定的执行范围(包括父范围)可见的所有变量。
Map<String, Object> getVariables(String executionId);
//同上
Map<String, VariableInstance> getVariableInstances(String executionId);
// 同上
List<VariableInstance> getVariableInstancesByExecutionIds(Set<String> executionIds);
//同上
Map<String, VariableInstance> getVariableInstances(String executionId, String locale, boolean withLocalizationFallback);
//在执行范围内定义的所有变量值,不考虑外部作用域。
如果您有许多任务局部变量,而且只需要一些,请考虑使用{@link #getVariablesLocal(String, Collection)}来获得更好的性能。
Map<String, Object> getVariablesLocal(String executionId);
//在执行范围内定义的所有变量值,不考虑外部作用域。
如果您有许多任务局部变量,你只需要一些,考虑使用{ @link # getVariableInstancesLocal(String, Collection)}获得更好的性能。
Map<String, VariableInstance> getVariableInstancesLocal(String executionId);
//同上
Map<String, VariableInstance> getVariableInstancesLocal(String executionId, String locale, boolean withLocalizationFallback);
//所有给定变量的变量值,将所有变量都考虑在内,从给定的执行范围(包括父作用域)可以看到。
Map<String, Object> getVariables(String executionId, Collection<String> variableNames);
//同上
Map<String, VariableInstance> getVariableInstances(String executionId, Collection<String> variableNames);
//同上
Map<String, VariableInstance> getVariableInstances(String executionId, Collection<String> variableNames, String locale, boolean withLocalizationFallback);
//给定变量的变量值只考虑给定的执行范围,而不考虑外部作用域。
Map<String, Object> getVariablesLocal(String executionId, Collection<String> variableNames);
//同上
Map<String, VariableInstance> getVariableInstancesLocal(String executionId, Collection<String> variableNames);
//同上
Map<String, VariableInstance> getVariableInstancesLocal(String executionId, Collection<String> variableNames, String locale, boolean withLocalizationFallback);
//变量的值。
搜索变量是在给定的执行(包括父范围)可见的所有范围内完成的。
当在给定的名称或值设置为null时,没有发现变量值,返回null。
Object getVariable(String executionId, String variableName);
//同上
VariableInstance getVariableInstance(String executionId, String variableName);
//变量的值。
搜索变量是在给定的执行(包括父范围)可见的所有范围内完成的。
当在给定的名称或值设置为null时,没有发现变量值,返回null。
抛出ClassCastException时,不能将变量转换为给定的类。
<T> T getVariable(String executionId, String variableName, Class<T> variableClass);
8.检测变量(1个)
//检查该执行是否具有给定名称的变量集,在给定的执行(包括父作用域)可见的所有范围内搜索该变量。
boolean hasVariable(String executionId, String variableName);
9.获取执行的变量值(4个)
//执行的变量值。
当变量为执行设置(而不是搜索父范围)时返回值。
当在给定的名称或值设置为null时,没有发现变量值,返回null。
Object getVariableLocal(String executionId, String variableName);
//同上
VariableInstance getVariableInstanceLocal(String executionId, String variableName);
//同上
VariableInstance getVariableInstanceLocal(String executionId, String variableName, String locale, boolean withLocalizationFallback);
//同上
<T> T getVariableLocal(String executionId, String variableName, Class<T> variableClass);
10.检测变量
//检查这个执行是否有一个带有给定名称的本地变量集。
boolean hasVariableLocal(String executionId, String variableName);
11.变量更新创建(有更新,无创建)4个 删除4个
//为执行更新或创建一个变量。
void setVariable(String executionId, String variableName, Object value);
//为执行更新或创建一个变量(不考虑父范围)。
如果变量不是已经存在,那么它将在给定的执行中创建。
void setVariableLocal(String executionId, String variableName, Object value);
//为执行(包括父范围)更新或创建给定的变量。
void setVariables(String executionId, Map<String, ? extends Object> variables);
//为执行更新或创建给定的变量(不考虑父范围)。
如果变量不是已经存在的,那么它将在给定的执行中创建。
void setVariablesLocal(String executionId, Map<String, ? extends Object> variables);
//为执行移除一个变量。
void removeVariable(String executionId, String variableName);
//同上(不考虑父范围)
void removeVariableLocal(String executionId, String variableName);
//同上(考虑父范围)
void removeVariables(String executionId, Collection<String> variableNames);
//同上(不考虑父范围)
void removeVariablesLocal(String executionId, Collection<String> variableNames);
12.创建执行查询
//创建一个新的{@link ExecutionQuery}实例,该实例可以用于查询执行和流程实例。
ExecutionQuery createExecutionQuery();
//创建一个新的{@link NativeExecutionQuery},可以直接通过SQL查询{@link Execution}。
NativeExecutionQuery createNativeExecutionQuery();
//创建一个新的{@link ProcessInstanceQuery}实例,该实例可以用于查询流程实例。
ProcessInstanceQuery createProcessInstanceQuery();
//创建一个新的{@link NativeProcessInstanceQuery } {@link ProcessInstance }年代直接通过SQL查询
NativeProcessInstanceQuery createNativeProcessInstanceQuery();
13.流程实例(挂起1个,激活1个,通知11个)
//用给定的id挂起流程实例。
void suspendProcessInstanceById(String processInstanceId);
//用给定的id激活流程实例。
void activateProcessInstanceById(String processInstanceId);
//通知流程引擎,接收到一个名为“signalName”的信号事件。
该方法将信号传递给等待信号的所有执行。
void signalEventReceived(String signalName);
//同上 但有租户的上下文。
void signalEventReceivedWithTenantId(String signalName, String tenantId);
//通知流程引擎,接收到一个名为“signalName”的信号事件。
该方法将信号传递给等待信号的所有执行。
void signalEventReceivedAsync(String signalName);
//同上 但有租户的上下文。
void signalEventReceivedAsyncWithTenantId(String signalName, String tenantId);
//通知流程引擎,接收到一个名为“signalName”的信号事件。
该方法将信号传递给等待信号的所有执行。
void signalEventReceived(String signalName, Map<String, Object> processVariables);
//同上 但有租户的上下文。
void signalEventReceivedWithTenantId(String signalName, Map<String, Object> processVariables, String tenantId);
//通知流程引擎,接收到一个名为“signalName”的信号事件。
该方法将信号传递给单个执行,即由“executionId”引用的执行。
等待执行被同步通知。
void signalEventReceived(String signalName, String executionId);
//同上
void signalEventReceived(String signalName, String executionId, Map<String, Object> processVariables);
//同上(异步)
void signalEventReceivedAsync(String signalName, String executionId);
//通知流程引擎,接收到名为“messageName”的消息事件,并与id“executionId”执行关联。
void messageEventReceived(String messageName, String executionId);
//同上
void messageEventReceived(String messageName, String executionId, Map<String, Object> processVariables);
//同上异步
void messageEventReceivedAsync(String messageName, String executionId);
14.监听器(添加2个,移除1个,分派1个)
//添加一个事件监听器,它将被分派器通知所有事件。
void addEventListener(ActivitiEventListener listenerToAdd);
//添加一个事件监听器,它只会在事件发生时被通知,该事件类型在给定类型中。
void addEventListener(ActivitiEventListener listenerToAdd, ActivitiEventType... types);
//从这个分派器中移除给定的侦听器。
侦听器将不再被通知,无论它在第一个位置注册的类型是什么。
void removeEventListener(ActivitiEventListener listenerToRemove);
//将给定事件分派给注册的任何侦听器。
void dispatchEvent(ActivitiEvent event);
//用给定的id设置流程实例的名称。
void setProcessInstanceName(String processInstanceId, String name);
//获取所有与给定流程实例相关的事件。
List<Event> getProcessInstanceEvents(String processInstanceId);
//创建一个ProcessInstanceBuilder
ProcessInstanceBuilder createProcessInstanceBuilder();
Activity服务类-8 RuntimeService服务类的更多相关文章
- Activity服务类-7 RepositoryService服务类
Activity服务类-1 RepositoryService服务类一共47个接口1.创建部署//开始创建一个新的部署.DeploymentBuilder createDeployment(); 2. ...
- 谢欣伦 - OpenDev原创教程 - 服务端套接字类CxServerSocket
这是一个精练的服务端套接字类,类名.函数名和变量名均采用匈牙利命名法.小写的x代表我的姓氏首字母(谢欣伦),个人习惯而已,如有雷同,纯属巧合. CxServerSocket的使用如下(以某个叫做CSo ...
- [改善Java代码]使用package-info类为包服务
建议50: 使用package-info类为包服务 Java中有一个特殊的类:package-info类,它是专门为本包服务的,为什么说它特殊呢?主要体现在3个方面: (1)它不能随便被创建 在一般的 ...
- 服务端套接字类CxServerSocket的使用
服务端套接字类CxServerSocket的使用 这是一个精练的服务端套接字类,类名.函数名和变量名均采用匈牙利命名法.小写的x代表我的姓氏首字母(谢欣能),个人习惯而已,如有雷同,纯属巧合. CxS ...
- C#中调用Windows系统服务exe程序的工具类与重启服务的流程
场景 使用C#编写的Windows服务程序,在Winform中进行调用. 常用工具类方法检测服务是否存在或者安装,获取服务状态,启动服务,停止服务的方法. 以在Winform中重启服务为例. 注: 博 ...
- Activity、Fragment、Dialog基类简单整理
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 这里简单记录下Activity.Fragment.Dialog基类中的常规写法,后续根据项目需求进行相应的扩展. BaseActiv ...
- Android 程式开发:(廿二)服务 —— 22.1 自定义服务
服务,就是跑在后台的“程序”,不需要和用户进行交互.举个例子,当使用一款应用的时候,可能同时想在后台播放一些音乐.在这种情况下,后来播放音乐的代码不需要和用户进行交互,所以,它就可能被当成一个服务.当 ...
- 18_Android中Service的生命周期,远程服务,绑定远程服务,aidl服务调用,综合服务案例,编写一个应用程序调用远程支付宝远程服务场景
============================================================================ 服务的生命周期: 一.采用start的方式开始 ...
- 玩转Windows服务系列——给Windows服务添加COM接口
当我们运行一个Windows服务的时候,一般情况下,我们会选择以非窗口或者非控制台的方式运行,这样,它就只是一个后台程序,没有界面供我们进行交互. 那么当我们想与Windows服务进行实时交互的时候, ...
随机推荐
- js操作链接url
使用js对当前的URL进行操作,可以使用内置对象window.location: window.location有以下属性: window.location.href:取得当前地址栏中的完整URL,可 ...
- vim golang 插件
最好用的vim golang 插件 可自动缩进 git clone git@github.com:aimin/InstallvimGo.git
- 转oracle 学习 - 表空间
Oracle 数据库的表空间和 Oracle 数据库数据文件 关于 Oracle 数据库的表空间. 很多 Oracle 初学者弄不明白表空间的概念和意义,他们只知道给数据库建表的时候需要到表空间这个东 ...
- 记录 ThinkPHP 5.* 漏洞修复后的情况
记录 ThinkPHP 5.* 漏洞修复后的情况 ThinkPHP 官方 2018-12-09 下午收到漏洞报告. 2018-12-09 晚上看到 Git 已经更新了,修复了漏洞. 2018-12-1 ...
- 【python】class之类属性
class Foo(object): x=1.5 foo=Foo() print foo.x#通过实例访问类属性 >>>1.5 print Foo.x #通过类访问类属性 >& ...
- Rabbit测试及其方案
转载:https://www.2cto.com/kf/201609/548190.html 个消息没有回应,则MQ不会再往消费者A中发消息,直到收到消息确认后才会再次发送. Ack:消息确认. :启动 ...
- GIS(地理信息系统)
ylbtech-杂项:GIS(地理信息系统) 地理信息系统(Geographic Information System或 Geo-Information system,GIS)有时又称为“地学信息系统 ...
- [转]身份证从 15 >> 18
身份证号码的结构和表达形式 1.号码的结构 由十七位数字本体码和一位效验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字效验码.2.地址码 表示编码对象常住 ...
- [转]IE6 的浮动
IE6 的一个 BUG,(IE6 双倍边距 BUG),只要满足下面 3 个条件才会出现这个 BUG: 1)要为块状元素: 2)要左侧浮动: 3)要有左外边距(margin-left): 解决这个 BU ...
- request-2高级用法
会话对象 会话对象让你能够跨请求保持某些参数.它也会在同一个session示例发出的所有请求之间保持cookie cookie与session的区别 1.cookie数据存放在客户的浏览器上,sess ...