From 11774d224ca074f5814cf1182046230659add2bc Mon Sep 17 00:00:00 2001 From: Joram Barrez Date: Mon, 14 Sep 2015 22:28:21 +0200 Subject: [PATCH] Fixing some typo's + adding a 'createDbSqlSessionFactory' such that subclasses can easily extend --- .../engine/delegate/DelegateExecution.java | 12 +++++- .../engine/impl/ProcessEngineImpl.java | 2 +- .../cfg/ProcessEngineConfigurationImpl.java | 43 +++++++++++-------- .../org/activiti/engine/impl/db/Entity.java | 1 + .../persistence/entity/ExecutionEntity.java | 3 +- 5 files changed, 39 insertions(+), 22 deletions(-) diff --git a/modules/activiti-engine/src/main/java/org/activiti/engine/delegate/DelegateExecution.java b/modules/activiti-engine/src/main/java/org/activiti/engine/delegate/DelegateExecution.java index ad61841042..88b265b76d 100644 --- a/modules/activiti-engine/src/main/java/org/activiti/engine/delegate/DelegateExecution.java +++ b/modules/activiti-engine/src/main/java/org/activiti/engine/delegate/DelegateExecution.java @@ -33,10 +33,14 @@ public interface DelegateExecution extends VariableScope { /** Reference to the overall process instance */ String getProcessInstanceId(); + /** + * The 'root' process instance. When using call activity for example, the processInstance + * set will not always be the root. This method returns the topmost process instance. + */ String getRootProcessInstanceId(); /** - * The {@link ExecutionListener#EVENTNAME_START event name} in case this execution is passed in for an {@link ExecutionListener} + * Will contain the event name in case this execution is passed in for an {@link ExecutionListener}. */ String getEventName(); @@ -70,8 +74,14 @@ public interface DelegateExecution extends VariableScope { */ String getTenantId(); + /** + * The BPMN element where the execution currently is at. + */ FlowElement getCurrentFlowElement(); + /** + * Change the current BPMN element the execution is at. + */ void setCurrentFlowElement(FlowElement flowElement); /* Execution management */ diff --git a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/ProcessEngineImpl.java b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/ProcessEngineImpl.java index ecef16cb28..8bf1f38f3c 100644 --- a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/ProcessEngineImpl.java +++ b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/ProcessEngineImpl.java @@ -74,7 +74,7 @@ public class ProcessEngineImpl implements ProcessEngine { this.sessionFactories = processEngineConfiguration.getSessionFactories(); this.transactionContextFactory = processEngineConfiguration.getTransactionContextFactory(); - if (processEngineConfiguration.isUsingRelationalDatabase()) { + if (processEngineConfiguration.isUsingRelationalDatabase() && processEngineConfiguration.getDatabaseSchemaUpdate() != null) { commandExecutor.execute(processEngineConfiguration.getSchemaCommandConfig(), new SchemaOperationsProcessEngineBuild()); } diff --git a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/cfg/ProcessEngineConfigurationImpl.java b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/cfg/ProcessEngineConfigurationImpl.java index ee186fde73..d566b7b91f 100755 --- a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/cfg/ProcessEngineConfigurationImpl.java +++ b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/cfg/ProcessEngineConfigurationImpl.java @@ -902,9 +902,8 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig if (sqlSessionFactory == null) { InputStream inputStream = null; try { - inputStream = getMyBatisXmlConfigurationSteam(); + inputStream = getMyBatisXmlConfigurationStream(); - // update the jdbc parameters to the configured ones... Environment environment = new Environment("default", transactionFactory, dataSource); Reader reader = new InputStreamReader(inputStream); Properties properties = new Properties(); @@ -971,7 +970,7 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig return ReflectUtil.getResourceAsStream(resource); } - protected InputStream getMyBatisXmlConfigurationSteam() { + protected InputStream getMyBatisXmlConfigurationStream() { return getResourceAsStream(DEFAULT_MYBATIS_MAPPING_FILE); } @@ -1065,21 +1064,7 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig sessionFactories = new HashMap, SessionFactory>(); if (usingRelationalDatabase) { - if (dbSqlSessionFactory == null) { - dbSqlSessionFactory = new DbSqlSessionFactory(); - } - dbSqlSessionFactory.setDatabaseType(databaseType); - dbSqlSessionFactory.setIdGenerator(idGenerator); - dbSqlSessionFactory.setSqlSessionFactory(sqlSessionFactory); - dbSqlSessionFactory.setDbIdentityUsed(isDbIdentityUsed); - dbSqlSessionFactory.setDbHistoryUsed(isDbHistoryUsed); - dbSqlSessionFactory.setDatabaseTablePrefix(databaseTablePrefix); - dbSqlSessionFactory.setTablePrefixIsSchema(tablePrefixIsSchema); - dbSqlSessionFactory.setDatabaseCatalog(databaseCatalog); - dbSqlSessionFactory.setDatabaseSchema(databaseSchema); - dbSqlSessionFactory.setBulkInsertEnabled(isBulkInsertEnabled, databaseType); - dbSqlSessionFactory.setMaxNrOfStatementsInBulkInsert(maxNrOfStatementsInBulkInsert); - addSessionFactory(dbSqlSessionFactory); + initDbSqlSessionFactory(); } addSessionFactory(new GenericManagerFactory(EntityCache.class, EntityCacheImpl.class)); @@ -1092,6 +1077,28 @@ public abstract class ProcessEngineConfigurationImpl extends ProcessEngineConfig } } + protected void initDbSqlSessionFactory() { + if (dbSqlSessionFactory == null) { + dbSqlSessionFactory = createDbSqlSessionFactory(); + } + dbSqlSessionFactory.setDatabaseType(databaseType); + dbSqlSessionFactory.setIdGenerator(idGenerator); + dbSqlSessionFactory.setSqlSessionFactory(sqlSessionFactory); + dbSqlSessionFactory.setDbIdentityUsed(isDbIdentityUsed); + dbSqlSessionFactory.setDbHistoryUsed(isDbHistoryUsed); + dbSqlSessionFactory.setDatabaseTablePrefix(databaseTablePrefix); + dbSqlSessionFactory.setTablePrefixIsSchema(tablePrefixIsSchema); + dbSqlSessionFactory.setDatabaseCatalog(databaseCatalog); + dbSqlSessionFactory.setDatabaseSchema(databaseSchema); + dbSqlSessionFactory.setBulkInsertEnabled(isBulkInsertEnabled, databaseType); + dbSqlSessionFactory.setMaxNrOfStatementsInBulkInsert(maxNrOfStatementsInBulkInsert); + addSessionFactory(dbSqlSessionFactory); + } + + protected DbSqlSessionFactory createDbSqlSessionFactory() { + return new DbSqlSessionFactory(); + } + protected void addSessionFactory(SessionFactory sessionFactory) { sessionFactories.put(sessionFactory.getSessionType(), sessionFactory); } diff --git a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/db/Entity.java b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/db/Entity.java index 443836b057..6d011cc480 100644 --- a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/db/Entity.java +++ b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/db/Entity.java @@ -14,6 +14,7 @@ package org.activiti.engine.impl.db; /** * @author Tom Baeyens + * @author Joram Barrez */ public interface Entity { diff --git a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/ExecutionEntity.java b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/ExecutionEntity.java index 414c82f664..125863112d 100755 --- a/modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/ExecutionEntity.java +++ b/modules/activiti-engine/src/main/java/org/activiti/engine/impl/persistence/entity/ExecutionEntity.java @@ -17,7 +17,6 @@ import java.util.Date; import java.util.List; import org.activiti.engine.delegate.DelegateExecution; -import org.activiti.engine.delegate.VariableScope; import org.activiti.engine.impl.db.Entity; import org.activiti.engine.impl.db.HasRevision; import org.activiti.engine.runtime.Execution; @@ -31,7 +30,7 @@ import org.activiti.engine.runtime.ProcessInstance; * @author Joram Barrez */ -public interface ExecutionEntity extends VariableScope, DelegateExecution, Execution, ProcessInstance, Entity, HasRevision { +public interface ExecutionEntity extends DelegateExecution, Execution, ProcessInstance, Entity, HasRevision { void setBusinessKey(String businessKey); -- GitLab