org.jbpm.runtime.manager.impl.cdi
Class InjectableRegisterableItemsFactory
java.lang.Object
org.jbpm.runtime.manager.impl.SimpleRegisterableItemsFactory
org.jbpm.runtime.manager.impl.DefaultRegisterableItemsFactory
org.jbpm.runtime.manager.impl.cdi.InjectableRegisterableItemsFactory
- All Implemented Interfaces:
- org.kie.internal.runtime.manager.RegisterableItemsFactory
public class InjectableRegisterableItemsFactory
- extends DefaultRegisterableItemsFactory
Implementation of RegisterableItemsFactory
dedicated to CDI environments that allows to get
injections of following components:
ExternalTaskEventListener
- required bean
WorkItemHandlerProducer
- optional bean (0 or more)
EventListenerProducer>
- optional bean (0 or more)
EventListenerProducer>
- optional bean (0 or more)
EventListenerProducer>
- optional bean (0 or more)
RuntimeFinder
- optional required only when single CDI bean is going to manage many
RuntimeManager
instances
In addition to that, AbstractAuditLogger
can be set after bean has been injected if the default
is not sufficient. Although this factory extends DefaultRegisterableItemsFactory
it will not
use any of the listeners and handlers that comes from the super class. It mainly relies on CDI injections
where the only exception from this rule is AbstractAuditLogger
Even though this is fully qualified bean for injection it provides helper methods to build its instances
using BeanManager
in case more independent instances are required.
- getFactory(BeanManager, AbstractAuditLogger)
- getFactory(BeanManager, AbstractAuditLogger, KieContainer, String)
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
InjectableRegisterableItemsFactory
public InjectableRegisterableItemsFactory()
getWorkItemHandlers
public Map<String,WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime)
- Specified by:
getWorkItemHandlers
in interface org.kie.internal.runtime.manager.RegisterableItemsFactory
- Overrides:
getWorkItemHandlers
in class DefaultRegisterableItemsFactory
getHTWorkItemHandler
protected WorkItemHandler getHTWorkItemHandler(RuntimeEngine runtime)
- Overrides:
getHTWorkItemHandler
in class DefaultRegisterableItemsFactory
getProcessEventListeners
public List<ProcessEventListener> getProcessEventListeners(RuntimeEngine runtime)
- Specified by:
getProcessEventListeners
in interface org.kie.internal.runtime.manager.RegisterableItemsFactory
- Overrides:
getProcessEventListeners
in class DefaultRegisterableItemsFactory
getWorkingMemoryEventListeners
public List<WorkingMemoryEventListener> getWorkingMemoryEventListeners(RuntimeEngine runtime)
- Specified by:
getWorkingMemoryEventListeners
in interface org.kie.internal.runtime.manager.RegisterableItemsFactory
- Overrides:
getWorkingMemoryEventListeners
in class DefaultRegisterableItemsFactory
getAgendaEventListeners
public List<AgendaEventListener> getAgendaEventListeners(RuntimeEngine runtime)
- Specified by:
getAgendaEventListeners
in interface org.kie.internal.runtime.manager.RegisterableItemsFactory
- Overrides:
getAgendaEventListeners
in class DefaultRegisterableItemsFactory
getFactory
public static org.kie.internal.runtime.manager.RegisterableItemsFactory getFactory(javax.enterprise.inject.spi.BeanManager beanManager,
AbstractAuditLogger auditlogger)
- Allows to create instance of this class dynamically via
BeanManager
. This is useful in case multiple
independent instances are required on runtime and that need cannot be satisfied with regular CDI practices.
- Parameters:
beanManager
- - bean manager instance of the containerauditlogger
- - AbstractAuditLogger
logger instance to be used, might be null
- Returns:
- new instance of the factory
getFactory
public static org.kie.internal.runtime.manager.RegisterableItemsFactory getFactory(javax.enterprise.inject.spi.BeanManager beanManager,
AbstractAuditLogger auditlogger,
KieContainer kieContainer,
String ksessionName)
- Allows to create instance of this class dynamically via
BeanManager
. This is useful in case multiple
independent instances are required on runtime and that need cannot be satisfied with regular CDI practices.
- Parameters:
beanManager
- - bean manager instance of the containerauditlogger
- - AbstractAuditLogger
logger instance to be used, might be nullkieContainer
- - KieContainer
that the factory is built forksessionName
- - name of the ksession defined in kmodule to be used,
if not given default ksession from kmodule will be used.
- Returns:
getInstanceByType
protected static <T> T getInstanceByType(javax.enterprise.inject.spi.BeanManager manager,
Class<T> type,
Annotation... bindings)
getAuditlogger
public AbstractAuditLogger getAuditlogger()
setAuditlogger
public void setAuditlogger(AbstractAuditLogger auditlogger)
getKieContainer
public KieContainer getKieContainer()
setKieContainer
public void setKieContainer(KieContainer kieContainer)
getKsessionName
public String getKsessionName()
setKsessionName
public void setKsessionName(String ksessionName)
getParametersMap
protected Map<String,Object> getParametersMap(RuntimeEngine runtime)
Copyright © 2001-2013 JBoss by Red Hat. All Rights Reserved.