Package org.jbpm.runtime.manager.impl
Class SimpleRuntimeEnvironment
- java.lang.Object
-
- org.jbpm.runtime.manager.impl.SimpleRuntimeEnvironment
-
- All Implemented Interfaces:
SchedulerProvider,org.kie.api.runtime.manager.RuntimeEnvironment,org.kie.internal.runtime.manager.RuntimeEnvironment
- Direct Known Subclasses:
DefaultRuntimeEnvironment
public class SimpleRuntimeEnvironment extends Object implements org.kie.internal.runtime.manager.RuntimeEnvironment, SchedulerProvider
The most basic implementation of theRuntimeEnvironmentthat, at the same time, serves as base implementation for all extensions. Encapsulates all important configuration thatRuntimeManagerrequires for execution.- EntityManagerFactory - shared for all runtime engine build based on same
RuntimeEnvironment - Environment - Drools/jBPM environment object - will be cloned for every
RuntimeEngine - KieSessionConfiguration - will be build passed on defined properties - cloned for every
RuntimeEngine - KieBase - resulting knowledge base build on given assets or returned if it was preset
- RegisterableItemsFactory - factory used to provide listeners and work item handlers
- Mapper - mapper used to keep context information
- UserGroupCallback - user group callback, if not given null will be returned
- GlobalSchedulerService - since this environment implements
SchedulerProviderit allows to getGlobalTimerServiceif available
-
-
Field Summary
Fields Modifier and Type Field Description protected ClassLoaderclassLoaderprotected org.kie.api.runtime.KieSessionConfigurationconfigurationprotected javax.persistence.EntityManagerFactoryemfprotected org.kie.api.runtime.Environmentenvironmentprotected Map<String,Object>environmentEntriesprotected org.kie.api.KieBasekbaseprotected org.kie.internal.builder.KnowledgeBuilderkbuilderprotected org.kie.internal.runtime.manager.Mappermapperprotected org.kie.api.runtime.manager.RegisterableItemsFactoryregisterableItemsFactoryprotected GlobalSchedulerServiceschedulerServiceprotected PropertiessessionConfigPropertiesprotected booleanusePersistenceprotected org.kie.api.task.UserGroupCallbackuserGroupCallbackprotected org.kie.api.task.UserInfouserInfo
-
Constructor Summary
Constructors Constructor Description SimpleRuntimeEnvironment()SimpleRuntimeEnvironment(org.kie.api.runtime.manager.RegisterableItemsFactory registerableItemsFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAsset(org.kie.api.io.Resource resource, org.kie.api.io.ResourceType type)Adds given asset to knowledge builder to produce KieBaseprotected voidaddIfPresent(String name, org.kie.api.runtime.Environment copy)voidaddToConfiguration(String name, String value)Adds configuration property that will be part ofKieSessionConfigurationvoidaddToEnvironment(String name, Object value)Adds element to the drools/jbpm environment - the value must be thread save as it will be shared between allRuntimeEngineinstancesvoidclose()protected org.kie.api.runtime.EnvironmentcopyEnvironment()ClassLoadergetClassLoader()org.kie.api.runtime.KieSessionConfigurationgetConfiguration()javax.persistence.EntityManagerFactorygetEmf()org.kie.api.runtime.EnvironmentgetEnvironment()org.kie.api.runtime.EnvironmentgetEnvironmentTemplate()org.kie.api.KieBasegetKieBase()org.kie.internal.runtime.manager.MappergetMapper()org.kie.api.runtime.manager.RegisterableItemsFactorygetRegisterableItemsFactory()GlobalSchedulerServicegetSchedulerService()Returns fully configured instance ofSchedulerServiceready to be used/PropertiesgetSessionConfigProperties()org.kie.api.task.UserGroupCallbackgetUserGroupCallback()org.kie.api.task.UserInfogetUserInfo()voidinit()voidsetClassLoader(ClassLoader classLoader)voidsetEmf(javax.persistence.EntityManagerFactory emf)voidsetKieBase(org.kie.api.KieBase kbase)voidsetMapper(org.kie.internal.runtime.manager.Mapper mapper)voidsetRegisterableItemsFactory(org.kie.api.runtime.manager.RegisterableItemsFactory registerableItemsFactory)voidsetSchedulerService(GlobalSchedulerService schedulerService)voidsetSessionConfigProperties(Properties sessionConfigProperties)voidsetUsePersistence(boolean usePersistence)voidsetUserGroupCallback(org.kie.api.task.UserGroupCallback userGroupCallback)voidsetUserInfo(org.kie.api.task.UserInfo userInfo)booleanusePersistence()
-
-
-
Field Detail
-
usePersistence
protected boolean usePersistence
-
emf
protected javax.persistence.EntityManagerFactory emf
-
environment
protected org.kie.api.runtime.Environment environment
-
configuration
protected org.kie.api.runtime.KieSessionConfiguration configuration
-
kbase
protected org.kie.api.KieBase kbase
-
kbuilder
protected org.kie.internal.builder.KnowledgeBuilder kbuilder
-
registerableItemsFactory
protected org.kie.api.runtime.manager.RegisterableItemsFactory registerableItemsFactory
-
mapper
protected org.kie.internal.runtime.manager.Mapper mapper
-
userGroupCallback
protected org.kie.api.task.UserGroupCallback userGroupCallback
-
userInfo
protected org.kie.api.task.UserInfo userInfo
-
schedulerService
protected GlobalSchedulerService schedulerService
-
classLoader
protected ClassLoader classLoader
-
sessionConfigProperties
protected Properties sessionConfigProperties
-
-
Method Detail
-
init
public void init()
-
addAsset
public void addAsset(org.kie.api.io.Resource resource, org.kie.api.io.ResourceType type)Adds given asset to knowledge builder to produce KieBase- Parameters:
resource- asset to be addedtype- type of the asset
-
addToEnvironment
public void addToEnvironment(String name, Object value)
Adds element to the drools/jbpm environment - the value must be thread save as it will be shared between allRuntimeEngineinstances- Parameters:
name- name of the environment entryvalue- value of the environment entry
-
addToConfiguration
public void addToConfiguration(String name, String value)
Adds configuration property that will be part ofKieSessionConfiguration- Parameters:
name- name of the propertyvalue- value of the property
-
getKieBase
public org.kie.api.KieBase getKieBase()
- Specified by:
getKieBasein interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
getEnvironmentTemplate
public org.kie.api.runtime.Environment getEnvironmentTemplate()
-
getEnvironment
public org.kie.api.runtime.Environment getEnvironment()
- Specified by:
getEnvironmentin interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
getConfiguration
public org.kie.api.runtime.KieSessionConfiguration getConfiguration()
- Specified by:
getConfigurationin interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
usePersistence
public boolean usePersistence()
- Specified by:
usePersistencein interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
getRegisterableItemsFactory
public org.kie.api.runtime.manager.RegisterableItemsFactory getRegisterableItemsFactory()
- Specified by:
getRegisterableItemsFactoryin interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
close
public void close()
- Specified by:
closein interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
addIfPresent
protected void addIfPresent(String name, org.kie.api.runtime.Environment copy)
-
copyEnvironment
protected org.kie.api.runtime.Environment copyEnvironment()
-
getMapper
public org.kie.internal.runtime.manager.Mapper getMapper()
- Specified by:
getMapperin interfaceorg.kie.internal.runtime.manager.RuntimeEnvironment
-
getUserGroupCallback
public org.kie.api.task.UserGroupCallback getUserGroupCallback()
- Specified by:
getUserGroupCallbackin interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
setUserGroupCallback
public void setUserGroupCallback(org.kie.api.task.UserGroupCallback userGroupCallback)
-
getUserInfo
public org.kie.api.task.UserInfo getUserInfo()
- Specified by:
getUserInfoin interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
setUserInfo
public void setUserInfo(org.kie.api.task.UserInfo userInfo)
-
getSessionConfigProperties
public Properties getSessionConfigProperties()
-
setSessionConfigProperties
public void setSessionConfigProperties(Properties sessionConfigProperties)
-
setUsePersistence
public void setUsePersistence(boolean usePersistence)
-
setKieBase
public void setKieBase(org.kie.api.KieBase kbase)
-
setMapper
public void setMapper(org.kie.internal.runtime.manager.Mapper mapper)
-
getSchedulerService
public GlobalSchedulerService getSchedulerService()
Description copied from interface:SchedulerProviderReturns fully configured instance ofSchedulerServiceready to be used/- Specified by:
getSchedulerServicein interfaceSchedulerProvider- Returns:
GlobalSchedulerServiceinstance configured according to environment needs
-
setSchedulerService
public void setSchedulerService(GlobalSchedulerService schedulerService)
-
setRegisterableItemsFactory
public void setRegisterableItemsFactory(org.kie.api.runtime.manager.RegisterableItemsFactory registerableItemsFactory)
-
getEmf
public javax.persistence.EntityManagerFactory getEmf()
-
setEmf
public void setEmf(javax.persistence.EntityManagerFactory emf)
-
getClassLoader
public ClassLoader getClassLoader()
- Specified by:
getClassLoaderin interfaceorg.kie.api.runtime.manager.RuntimeEnvironment
-
setClassLoader
public void setClassLoader(ClassLoader classLoader)
-
-