Class ProcessEngineManager
java.lang.Object
com.aquima.interactions.process.impl.ProcessEngineManager
- All Implemented Interfaces:
IProcessEngineManager
Process engine manager implementation that uses a datasource to initialize its process engines.
- Since:
- 7.1.10
- Author:
- O. Kerpershoek
-
Constructor Summary
ConstructorsConstructorDescriptionProcessEngineManager
(IProcessManagerDS datasource, ProcessSettings processSettings, ILicenseProvider licenseProvider, IScheduler scheduler, ILegacyToggles legacyToggles, IProcessEngineFactory processEngineFactory, boolean timerIntervalSet) Construct a process engine manager. -
Method Summary
Modifier and TypeMethodDescriptiongetProcessEngine
(IProject project, IProcessModuleDS datasource, IProcessExtensionFactory processExtensionFactory, ITraceEngine traceEngine) This method initializes and returns a process engine for a specified application/project.This method returns the process engine settings which will be used by all process engine instances created by this manager.getReport
(IProject project, IProcessModuleDS datasource, IProcessExtensionFactory processExtensionFactory, ITraceEngine traceEngine) This method returns the initialization report of a process engine.void
Clears the process engine cache.void
resetCache
(ApplicationID applicationID) This method may be invoked to reset the process engine cache for a specific application.void
setDomainValuesFactory
(IDomainValuesFactory domainValuesFactory) This method can be used to set an optional domain values factory that will be used for all process engines that are available in this manager.
-
Constructor Details
-
ProcessEngineManager
public ProcessEngineManager(IProcessManagerDS datasource, ProcessSettings processSettings, ILicenseProvider licenseProvider, IScheduler scheduler, ILegacyToggles legacyToggles, IProcessEngineFactory processEngineFactory, boolean timerIntervalSet) Construct a process engine manager.- Parameters:
datasource
- The datasource containing the process engine definitions.processSettings
- processEngine settings to uselicenseProvider
- The license provider that is used to check if processes is allowed.scheduler
- The quartz scheduler used to handle timer nodes inside the process enginelegacyToggles
- Toggles that control legacy behaviorprocessEngineFactory
- The process engine factorytimerIntervalSet
- whether the timer interval was set to MINUTE or HOUR- Throws:
AppException
- This exception is thrown when the manager could not be initialized.InitializationException
- This exception is thrown when the manager could not be initialized.
-
-
Method Details
-
getProcessEngine
public IProcessEngine getProcessEngine(IProject project, IProcessModuleDS datasource, IProcessExtensionFactory processExtensionFactory, ITraceEngine traceEngine) throws UnknownProcessModuleException, InitializationException Description copied from interface:IProcessEngineManager
This method initializes and returns a process engine for a specified application/project.- Specified by:
getProcessEngine
in interfaceIProcessEngineManager
- Parameters:
project
- Project containing various global definitions.datasource
- Object providing the information needed to initialize a process engine.- Returns:
- The process engine implementation, may be null.
- Throws:
UnknownProcessModuleException
- This exception is thrown when the module ID is not registered with the manager.InitializationException
- When the process engine could not be initialized.
-
getProcessEngineSettings
Description copied from interface:IProcessEngineManager
This method returns the process engine settings which will be used by all process engine instances created by this manager.- Specified by:
getProcessEngineSettings
in interfaceIProcessEngineManager
- Returns:
- the process engine settings
-
getReport
public IInitializationReport getReport(IProject project, IProcessModuleDS datasource, IProcessExtensionFactory processExtensionFactory, ITraceEngine traceEngine) Description copied from interface:IProcessEngineManager
This method returns the initialization report of a process engine. If no process engine is defined for the application null will be returned.- Specified by:
getReport
in interfaceIProcessEngineManager
- Parameters:
project
- The project of the process engine report to return.datasource
- The datasource for the processModule.processExtensionFactory
- the factory for process extensions.traceEngine
- the trace engine.- Returns:
- The initialization report, may be null.
-
resetCache
Description copied from interface:IProcessEngineManager
This method may be invoked to reset the process engine cache for a specific application.- Specified by:
resetCache
in interfaceIProcessEngineManager
- Parameters:
applicationID
- The id of the application for which the processEngine should be reset
-
resetCache
public void resetCache()Description copied from interface:IProcessEngineManager
Clears the process engine cache.- Specified by:
resetCache
in interfaceIProcessEngineManager
-
setDomainValuesFactory
Description copied from interface:IProcessEngineManager
This method can be used to set an optional domain values factory that will be used for all process engines that are available in this manager.Note: Some implementations may use lazy loading to initialize the process engines, so setting a domain factory after a process engine is initialized will not effect the already initialized process engines.
- Specified by:
setDomainValuesFactory
in interfaceIProcessEngineManager
- Parameters:
domainValuesFactory
- The optional domain factory.
-