/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.flowable.common.engine.impl;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.time.Duration;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.ServiceLoader;
import java.util.Set;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.builder.xml.XMLConfigBuilder;
import org.apache.ibatis.builder.xml.XMLMapperBuilder;
import org.apache.ibatis.datasource.pooled.PooledDataSource;
import org.apache.ibatis.mapping.Environment;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.defaults.DefaultSqlSessionFactory;
import org.apache.ibatis.transaction.TransactionFactory;
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
import org.apache.ibatis.transaction.managed.ManagedTransactionFactory;
import org.apache.ibatis.type.ArrayTypeHandler;
import org.apache.ibatis.type.BigDecimalTypeHandler;
import org.apache.ibatis.type.BlobInputStreamTypeHandler;
import org.apache.ibatis.type.BlobTypeHandler;
import org.apache.ibatis.type.BooleanTypeHandler;
import org.apache.ibatis.type.ByteTypeHandler;
import org.apache.ibatis.type.ClobTypeHandler;
import org.apache.ibatis.type.DateOnlyTypeHandler;
import org.apache.ibatis.type.DateTypeHandler;
import org.apache.ibatis.type.DoubleTypeHandler;
import org.apache.ibatis.type.FloatTypeHandler;
import org.apache.ibatis.type.IntegerTypeHandler;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.LongTypeHandler;
import org.apache.ibatis.type.NClobTypeHandler;
import org.apache.ibatis.type.NStringTypeHandler;
import org.apache.ibatis.type.ShortTypeHandler;
import org.apache.ibatis.type.SqlxmlTypeHandler;
import org.apache.ibatis.type.StringTypeHandler;
import org.apache.ibatis.type.TimeOnlyTypeHandler;
import org.apache.ibatis.type.TypeHandlerRegistry;
import org.flowable.common.engine.api.FlowableException;
import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType;
import org.flowable.common.engine.api.delegate.event.FlowableEventDispatcher;
import org.flowable.common.engine.api.delegate.event.FlowableEventListener;
import org.flowable.common.engine.api.engine.EngineLifecycleListener;
import org.flowable.common.engine.impl.agenda.AgendaOperationRunner;
import org.flowable.common.engine.impl.cfg.CommandExecutorImpl;
import org.flowable.common.engine.impl.cfg.IdGenerator;
import org.flowable.common.engine.impl.cfg.TransactionContextFactory;
import org.flowable.common.engine.impl.cfg.standalone.StandaloneMybatisTransactionContextFactory;
import org.flowable.common.engine.impl.db.CommonDbSchemaManager;
import org.flowable.common.engine.impl.db.DbSqlSessionFactory;
import org.flowable.common.engine.impl.db.LogSqlExecutionTimePlugin;
import org.flowable.common.engine.impl.db.MybatisTypeAliasConfigurator;
import org.flowable.common.engine.impl.db.MybatisTypeHandlerConfigurator;
import org.flowable.common.engine.impl.db.SchemaManager;
import org.flowable.common.engine.impl.event.EventDispatchAction;
import org.flowable.common.engine.impl.event.FlowableEventDispatcherImpl;
import org.flowable.common.engine.impl.interceptor.Command;
import org.flowable.common.engine.impl.interceptor.CommandConfig;
import org.flowable.common.engine.impl.interceptor.CommandContextFactory;
import org.flowable.common.engine.impl.interceptor.CommandContextInterceptor;
import org.flowable.common.engine.impl.interceptor.CommandExecutor;
import org.flowable.common.engine.impl.interceptor.CommandInterceptor;
import org.flowable.common.engine.impl.interceptor.CrDbRetryInterceptor;
import org.flowable.common.engine.impl.interceptor.DefaultCommandInvoker;
import org.flowable.common.engine.impl.interceptor.LogInterceptor;
import org.flowable.common.engine.impl.interceptor.SessionFactory;
import org.flowable.common.engine.impl.interceptor.TransactionContextInterceptor;
import org.flowable.common.engine.impl.lock.LockManager;
import org.flowable.common.engine.impl.lock.LockManagerImpl;
import org.flowable.common.engine.impl.logging.LoggingListener;
import org.flowable.common.engine.impl.logging.LoggingSession;
import org.flowable.common.engine.impl.logging.LoggingSessionFactory;
import org.flowable.common.engine.impl.persistence.GenericManagerFactory;
import org.flowable.common.engine.impl.persistence.StrongUuidGenerator;
import org.flowable.common.engine.impl.persistence.cache.EntityCache;
import org.flowable.common.engine.impl.persistence.cache.EntityCacheImpl;
import org.flowable.common.engine.impl.persistence.entity.ByteArrayEntityManager;
import org.flowable.common.engine.impl.persistence.entity.ByteArrayEntityManagerImpl;
import org.flowable.common.engine.impl.persistence.entity.Entity;
import org.flowable.common.engine.impl.persistence.entity.PropertyEntityManager;
import org.flowable.common.engine.impl.persistence.entity.PropertyEntityManagerImpl;
import org.flowable.common.engine.impl.persistence.entity.TableDataManager;
import org.flowable.common.engine.impl.persistence.entity.TableDataManagerImpl;
import org.flowable.common.engine.impl.persistence.entity.data.ByteArrayDataManager;
import org.flowable.common.engine.impl.persistence.entity.data.PropertyDataManager;
import org.flowable.common.engine.impl.persistence.entity.data.impl.MybatisByteArrayDataManager;
import org.flowable.common.engine.impl.persistence.entity.data.impl.MybatisPropertyDataManager;
import org.flowable.common.engine.impl.runtime.Clock;
import org.flowable.common.engine.impl.service.CommonEngineServiceImpl;
import org.flowable.common.engine.impl.util.DefaultClockImpl;
import org.flowable.common.engine.impl.util.IoUtil;
import org.flowable.common.engine.impl.util.ReflectUtil;
import org.flowable.eventregistry.api.EventRegistryEventConsumer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public abstract class AbstractEngineConfiguration {
protected final Logger logger = LoggerFactory.getLogger(getClass());
/** The tenant id indicating 'no tenant' */
public static final String NO_TENANT_ID = "";
/**
* Checks the version of the DB schema against the library when the form engine is being created and throws an exception if the versions don't match.
*/
public static final String DB_SCHEMA_UPDATE_FALSE = "false";
public static final String DB_SCHEMA_UPDATE_CREATE = "create";
public static final String DB_SCHEMA_UPDATE_CREATE_DROP = "create-drop";
/**
* Creates the schema when the form engine is being created and drops the schema when the form engine is being closed.
*/
public static final String DB_SCHEMA_UPDATE_DROP_CREATE = "drop-create";
/**
* Upon building of the process engine, a check is performed and an update of the schema is performed if it is necessary.
*/
public static final String DB_SCHEMA
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
RuoYi-Vue 全新 Pro 版本,优化重构所有功能。基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 微信小程序,支持 RBAC 动态权限、数据权限、SaaS 多租户、Flowable 工作流、三方登录、支付、短信、商城、CRM、ERP 等功能。
资源推荐
资源详情
资源评论
收起资源包目录
RuoYi-Vue 全新 Pro 版本,优化重构所有功能 (1205个子文件)
com.xingyuv.captcha.service.CaptchaCacheService 78B
lombok.config 126B
area.csv 97KB
liquibase.database.Database 821B
Dockerfile 735B
docker.env 832B
spring.factories 142B
spring.factories 131B
.gitignore 722B
OAuth2OpenController.http 2KB
FileConfigController.http 1KB
RoleController.http 933B
AuthController.http 815B
OAuth2ClientController.http 655B
TenantController.http 557B
OAuth2UserController.http 422B
MailTemplateController.http 335B
SmsTemplateController.http 333B
ErrorCodeController.http 227B
SensitiveWordController.http 211B
UserController.http 167B
RedisController.http 164B
UserProfileController.http 160B
OperateLogController.http 154B
DictDataController.http 149B
MenuController.http 133B
AreaController.http 115B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 487B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 238B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 226B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 225B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 175B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 140B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 139B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 138B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 135B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 75B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 69B
org.springframework.boot.autoconfigure.AutoConfiguration.imports 65B
AbstractEngineConfiguration.java 79KB
CodegenEngine.java 29KB
DmDatabase.java 25KB
DataPermissionDatabaseInterceptor.java 24KB
AdminUserServiceImpl.java 19KB
OAuth2OpenController.java 17KB
GlobalExceptionHandler.java 16KB
SocialClientServiceImpl.java 14KB
PermissionServiceImpl.java 14KB
CodegenServiceImpl.java 13KB
CollectionUtils.java 13KB
ErrorCodeConstants.java 13KB
TenantServiceImpl.java 12KB
ApiAccessLogFilter.java 12KB
CodegenBuilder.java 11KB
AdminAuthServiceImpl.java 10KB
InvocableHandlerMethod.java 10KB
Demo03StudentController.java 9KB
YudaoWebSecurityConfigurerAdapter.java 9KB
MPJLambdaWrapperX.java 9KB
DeptDataPermissionRule.java 9KB
RoleServiceImpl.java 9KB
SensitiveWordServiceImpl.java 9KB
YudaoWebSocketAutoConfiguration.java 8KB
YudaoRedisMQConsumerAutoConfiguration.java 8KB
SmsSendServiceImpl.java 8KB
TencentSmsClient.java 8KB
UserController.java 8KB
DeptServiceImpl.java 8KB
CodegenController.java 8KB
SmsTemplateServiceImpl.java 8KB
SocialUserServiceImpl.java 8KB
OAuth2TokenServiceImpl.java 7KB
MenuServiceImpl.java 7KB
Demo03StudentServiceImpl.java 7KB
BaseMapperX.java 7KB
ProjectReactor.java 7KB
BooleanType.java 7KB
AreaUtils.java 7KB
AliyunSmsClient.java 7KB
DatabaseDocController.java 7KB
FileConfigServiceImpl.java 7KB
YudaoSwaggerAutoConfiguration.java 7KB
ErrorCodeServiceImpl.java 7KB
AuthController.java 6KB
JsonUtils.java 6KB
YudaoTenantAutoConfiguration.java 6KB
MailSendServiceImpl.java 6KB
DictDataServiceImpl.java 6KB
JobController.java 6KB
OAuth2ClientServiceImpl.java 6KB
JobServiceImpl.java 6KB
SmsChannelServiceImpl.java 6KB
SchedulerManager.java 6KB
TenantSecurityWebFilter.java 5KB
ErrorCodeConstants.java 5KB
YudaoWebAutoConfiguration.java 5KB
TenantController.java 5KB
DateUtils.java 5KB
NotifyTemplateServiceImpl.java 5KB
SelectSheetWriteHandler.java 5KB
共 1205 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 7353
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Electron + Vue仿网易云音乐windows客户端.zip
- Dropzone.js 的 Vue.js 组件 - 带有图像预览的拖放文件上传实用程序.zip
- vue框架开发,如何在vue框架下编写代码介绍
- 移动机器人路径规划实战,入门教程实验代码
- Chart.js 的 Vue.js 包装器.zip
- BootstrapVue 为 Vue.js 提供了最全面的 Bootstrap v4 实现之一 具有广泛且自动化的 WAI-ARIA 可访问性标记 .zip
- Babel , Vue JSX 相关软件包的 monorepo.zip
- Java多线程基础学习指南:原理、实现与实战
- 西电微机原理实验:实验内容、步骤与实践指导 - 计算机科学与技术专业的教学辅助材料
- 计算机网络课程设计:选题指南与实践要点
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功