一、flowable的五个引擎

flowable包含五个引擎,分别是:

  • 1、内容引擎 ContentEngine
  • 2、身份识别引擎 IdmEngine
  • 3、表单引擎 FormEngine
  • 4、决策引擎 DmnEngine
  • 5、流程引擎 ProcessEngine

二、引擎包含的服务

每个引擎由相对应的 EngineConfiguration进行创建,在创建过程中对每个引擎使用的服务进行初始化。

1、内容引擎 ContentEngine

内容引擎包含的服务有:

  1. ContentManagementService

    ContentManagementService提供对数据库表的管理操作,包括:

    • Map<String, Long> getTableCount() 获取每个表的记录数量;
    • String getTableName(Class<?> flowableEntityClass); 根据实体类获得对应的数据库表名;
    • TableMetaData getTableMetaData(String tableName); 根据数据库表名获得表的列名和列类型;
    • TablePageQuery createTablePageQuery(); 创建一个可以进行排序、根据条件分页的查询类。
  2. ContentService

    实现对内容的创建、删除、保存和获取的基本操作。

     ContentItem newContentItem();
    
    void saveContentItem(ContentItem contentItem);
    
    void saveContentItem(ContentItem contentItem, InputStream inputStream);
    
    InputStream getContentItemData(String contentItemId);
    
    void deleteContentItem(String contentItemId);
    
    void deleteContentItemsByProcessInstanceId(String processInstanceId);
    
    void deleteContentItemsByTaskId(String taskId);
    
    ContentItemQuery createContentItemQuery();
  3. ContentEngineConfiguration

    ContentEngineConfiguration最主要的作用是提供Mybatis的封装,实现数据库相关配置的获取。

    同时,内容引擎配置还提供了操作系统级的文件操作的路径设置、文件读取、文件保存的功能。

2、身份识别引擎 IdmEngine

身份识别引擎包含的服务有:

  1. IdmIdentityService

    提供用户的创建、修改、删除、密码修改、登录、用户头像设置等;

    提供组Group的创建、删除、用户与组关系的关联、删除关联;

    提供权限的创建、删除、关联等。

  2. IdmManagementService

    对身份识别相关的数据库表进行统计、获取表的列信息。

  3. IdmEngineConfiguration

    提供数据库配置信息。

3、表单引擎 FormEngine

表单引擎包含的服务有:

  1. FormManagementService
  2. FormRepositoryService
  3. FormService
  4. FormEngineConfiguration

4、决策引擎 DmnEngine

决策引擎包含的服务有:

  1. DmnManagementService
  2. DmnRepositoryService
  3. DmnRuleService
  4. DmnHistoryService
  5. DmnEngineConfiguration

5、流程引擎 ProcessEngine

流程引擎包含的服务有:

  1. RepositoryService
  2. RuntimeService
  3. HistoryService
  4. IdentityService
  5. TaskService
  6. FormService
  7. ManagementService
  8. DynamicBpmnService

flowable 五个引擎和组成引擎的服务的更多相关文章

  1. 【repost】浏览器内核、渲染引擎、js引擎

    [1]定义 浏览器内核分成两部分渲染引擎和js引擎,由于js引擎越来越独立,内核就倾向于只指渲染引擎 渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具[2]常见引擎 渲染引擎: firef ...

  2. 浏览器内核、渲染引擎、js引擎

    [1]定义 浏览器内核分成两部分渲染引擎和js引擎,由于js引擎越来越独立,内核就倾向于只指渲染引擎 渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具 [2]常见引擎 渲染引擎: fire ...

  3. F2工作流引擎这工作流引擎体系架构(二)

    F2工作流体系架构概览图 为了能更好的了解F2工作流引擎的架构体系,花了些时间画了整个架构的体系图.F2工作流引擎遵循参考WFCM规范,目标是实现轻量级的工作流引擎,支持多种数据库及快速应用到任何基于 ...

  4. 【转】浏览器内核、渲染引擎、js引擎

    [1]定义 浏览器内核分成两部分渲染引擎和js引擎,由于js引擎越来越独立,内核就倾向于只指渲染引擎 渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具[2]常见引擎 渲染引擎: firef ...

  5. GIS中的引擎:地图引擎

    什么是地图引擎?它和地图软件有什么区别? 引擎一词是英文单词engine的音译,通常指发动机,就是动力输出设备.诸如汽车.轮船.飞机的动力提供的核心设备就是引擎.IT领域中,常听说的有搜索引擎.图形引 ...

  6. 浏览器内核、渲染引擎、JS引擎简介

    一.定义 浏览器内核分成两部分:渲染引擎和JS引擎. 由于JS引擎越来越独立,浏览器内核 就倾向于 单指 渲染引擎.  渲染引擎是一种对HTML文档进行解析并将其显示在页面上的工具.(说白了,就是按照 ...

  7. 浏览器内核、排版引擎、js引擎

    [定义] 浏览器最重要或者说核心的部分是“Rendering Engine”,可大概译为“渲染引擎”,不过我们一般习惯将之称为“浏览器内核”.负责对网页语法的解释(如标准通用标记语 言下的一个应用HT ...

  8. 关于广州xx公司对驰骋BPM, 流程引擎表单引擎 常见问题解答

    关于广州xx公司对驰骋BPM, 流程引擎表单引擎 常见问题解答 @驰骋工作流,ccflow周朋 周总早, ccflow 功能很强大,在体验过程中,以下几个问题需沟通下: 先使用.net 再使用java ...

  9. 深入浏览器工作原理和JS引擎(V8引擎为例)

    浏览器工作原理和JS引擎 1.浏览器工作原理 在浏览器中输入查找内容,浏览器是怎样将页面加载出来的?以及JavaScript代码在浏览器中是如何被执行的? 大概流程可观察以下图: 首先,用户在浏览器搜 ...

随机推荐

  1. Hive表的修改Alter

    1.查看创建表的信息 [show create table] hive> show create table student; OK createtab_stmt CREATE TABLE `s ...

  2. Java 线程池submit和execute

    submit方法: public abstract class AbstractExecutorService implements ExecutorService { protected <T ...

  3. Linux crontab命令 定时任务 用法详解以及no crontab for root解决办法

    最近系统服务器进行搬迁,又恰好需要使用定时任务运行程序,而我的程序主要使用PHP写的,然后总结了下定时任务的用法,但是在这里主要写的是关于crontab命令的用法,使用过程中遇到不少问题,例如no c ...

  4. 盘点SQL on Hadoop中用到的主要技术

    转载自:http://sunyi514.github.io/2014/11/15/%E7%9B%98%E7%82%B9sql-on-hadoop%E4%B8%AD%E7%94%A8%E5%88%B0% ...

  5. 解题报告:51nod 加农炮

    2017-10-07 16:15:16 writer:pprp 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题   一个长度为M的正整 ...

  6. 远程线程注入shellcode笔记

    #include "stdafx.h" #include <windows.h> #include <stdio.h> char shellcode[] = ...

  7. Angular内提供了一个可以快速建立测试用web服务的方法:内存 (in-memory) 服务器

    如何使用 Angular 内存 (in-memory) 服务器https://segmentfault.com/a/1190000009898540

  8. 最简js深浅拷贝说明

    1.浅拷贝 浅拷贝是拷贝引用,拷贝后的引用都是指向同一个对象的实例,彼此之间的操作会互相影响.  浅拷贝分两种情况: 1.直接拷贝源对象的引用 2. 源对象拷贝实例,但其属性对象(类型为Object, ...

  9. BOM(Browser Object Model) 浏览器对象模型

    JavaScript 实现是由 3 个部分组成:核心(ECMAScript),文档对象模型(DOM),浏览器对象模型(BOM) BOM(Browser Object Model) 浏览器对象模型BOM ...

  10. 学习opencv(持续更新)

    redhat安装,报错解决方法 1 升级GCC,http://mirrors.kernel.org/gnu/gcc/ 2 更换稳定版本 #!/bin/bash yum -y install gcc g ...