protected void registerItems(RuntimeEngine runtime) { RegisterableItemsFactory factory = environment.getRegisterableItemsFactory(); Map<String, WorkItemHandler> handlers = factory.getWorkItemHandlers(runtime); for (Entry<String, WorkItemHandler> entry : handlers.entrySet()) { runtime.getKieSession().getWorkItemManager().registerWorkItemHandler(entry.getKey(), entry.getValue()); Map<String, Object> globals = factory.getGlobals(runtime); for (Entry<String, Object> entry : globals.entrySet()) { runtime.getKieSession().setGlobal(entry.getKey(), entry.getValue()); List<ProcessEventListener> processListeners = factory.getProcessEventListeners(runtime); for (ProcessEventListener listener : processListeners) { runtime.getKieSession().addEventListener(listener); List<AgendaEventListener> agendaListeners = factory.getAgendaEventListeners(runtime); for (AgendaEventListener listener : agendaListeners) { runtime.getKieSession().addEventListener(listener); List<RuleRuntimeEventListener> wmListeners = factory.getRuleRuntimeEventListeners(runtime); for (RuleRuntimeEventListener listener : wmListeners) { runtime.getKieSession().addEventListener(listener);
@SuppressWarnings({ "unchecked", "rawtypes" }) protected void configureRuntimeOnTaskService(InternalTaskService internalTaskService, RuntimeEngine engine) { if (internalTaskService != null) { ExternalTaskEventListener listener = new ExternalTaskEventListener(); if (internalTaskService instanceof EventService) { ((EventService)internalTaskService).registerTaskEventListener(listener); } // register task listeners if any RegisterableItemsFactory factory = environment.getRegisterableItemsFactory(); for (TaskLifeCycleEventListener taskListener : factory.getTaskListeners()) { ((EventService<TaskLifeCycleEventListener>)internalTaskService).registerTaskEventListener(taskListener); } if (engine != null && engine instanceof Disposable) { ((Disposable)engine).addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { if (runtime.getTaskService() instanceof EventService) { ((EventService)runtime.getTaskService()).clearTaskEventListeners();; } } }); } } }
/** * {@inheritDoc} */ @Override public List<ProcessEventListener> getProcessEventListeners(RuntimeEngine runtime) { List<ProcessEventListener> list = new ArrayList<ProcessEventListener>(); list.addAll(_rootFactory.getProcessEventListeners(runtime)); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getProcessEventListeners(runtime)); } return list; }
/** * {@inheritDoc} */ @Override public List<AgendaEventListener> getAgendaEventListeners(RuntimeEngine runtime) { List<AgendaEventListener> list = new ArrayList<AgendaEventListener>(); list.addAll(_rootFactory.getAgendaEventListeners(runtime)); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getAgendaEventListeners(runtime)); } return list; }
/** * {@inheritDoc} */ @Override public Map<String, Object> getGlobals(RuntimeEngine runtime) { Map<String, Object> map = new HashMap<String, Object>(); map.putAll(_rootFactory.getGlobals(runtime)); for (RegisterableItemsFactory f : _factories) { map.putAll(f.getGlobals(runtime)); } return map; }
/** * {@inheritDoc} */ @Override public Map<String, WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime) { Map<String, WorkItemHandler> map = new HashMap<String, WorkItemHandler>(); map.putAll(_rootFactory.getWorkItemHandlers(runtime)); for (RegisterableItemsFactory f : _factories) { map.putAll(f.getWorkItemHandlers(runtime)); } return map; }
/** * {@inheritDoc} */ @Override public List<RuleRuntimeEventListener> getRuleRuntimeEventListeners(RuntimeEngine runtime) { List<RuleRuntimeEventListener> list = new ArrayList<RuleRuntimeEventListener>(); list.addAll(_rootFactory.getRuleRuntimeEventListeners(runtime)); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getRuleRuntimeEventListeners(runtime)); } return list; }
/** * {@inheritDoc} */ @Override public List<ProcessEventListener> getProcessEventListeners(RuntimeEngine runtime) { List<ProcessEventListener> list = new ArrayList<ProcessEventListener>(); list.addAll(_rootFactory.getProcessEventListeners(runtime)); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getProcessEventListeners(runtime)); } return list; }
/** * {@inheritDoc} */ @Override public List<AgendaEventListener> getAgendaEventListeners(RuntimeEngine runtime) { List<AgendaEventListener> list = new ArrayList<AgendaEventListener>(); list.addAll(_rootFactory.getAgendaEventListeners(runtime)); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getAgendaEventListeners(runtime)); } return list; }
/** * {@inheritDoc} */ @Override public Map<String, Object> getGlobals(RuntimeEngine runtime) { Map<String, Object> map = new HashMap<String, Object>(); map.putAll(_rootFactory.getGlobals(runtime)); for (RegisterableItemsFactory f : _factories) { map.putAll(f.getGlobals(runtime)); } return map; }
/** * {@inheritDoc} */ @Override public Map<String, WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime) { Map<String, WorkItemHandler> map = new HashMap<String, WorkItemHandler>(); map.putAll(_rootFactory.getWorkItemHandlers(runtime)); for (RegisterableItemsFactory f : _factories) { map.putAll(f.getWorkItemHandlers(runtime)); } return map; }
/** * {@inheritDoc} */ @Override public List<RuleRuntimeEventListener> getRuleRuntimeEventListeners(RuntimeEngine runtime) { List<RuleRuntimeEventListener> list = new ArrayList<RuleRuntimeEventListener>(); list.addAll(_rootFactory.getRuleRuntimeEventListeners(runtime)); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getRuleRuntimeEventListeners(runtime)); } return list; }
protected void registerItems(RuntimeEngine runtime) { RegisterableItemsFactory factory = environment.getRegisterableItemsFactory(); Map<String, WorkItemHandler> handlers = factory.getWorkItemHandlers(runtime); for (Entry<String, WorkItemHandler> entry : handlers.entrySet()) { runtime.getKieSession().getWorkItemManager().registerWorkItemHandler(entry.getKey(), entry.getValue()); Map<String, Object> globals = factory.getGlobals(runtime); for (Entry<String, Object> entry : globals.entrySet()) { runtime.getKieSession().setGlobal(entry.getKey(), entry.getValue()); List<ProcessEventListener> processListeners = factory.getProcessEventListeners(runtime); for (ProcessEventListener listener : processListeners) { runtime.getKieSession().addEventListener(listener); List<AgendaEventListener> agendaListeners = factory.getAgendaEventListeners(runtime); for (AgendaEventListener listener : agendaListeners) { runtime.getKieSession().addEventListener(listener); List<RuleRuntimeEventListener> wmListeners = factory.getRuleRuntimeEventListeners(runtime); for (RuleRuntimeEventListener listener : wmListeners) { runtime.getKieSession().addEventListener(listener);
/** * {@inheritDoc} */ @Override public List<TaskLifeCycleEventListener> getTaskListeners() { List<TaskLifeCycleEventListener> list = new ArrayList<TaskLifeCycleEventListener>(); list.addAll(_rootFactory.getTaskListeners()); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getTaskListeners()); } return list; }
/** * {@inheritDoc} */ @Override public List<TaskLifeCycleEventListener> getTaskListeners() { List<TaskLifeCycleEventListener> list = new ArrayList<TaskLifeCycleEventListener>(); list.addAll(_rootFactory.getTaskListeners()); for (RegisterableItemsFactory f : _factories) { list.addAll(f.getTaskListeners()); } return list; }
@SuppressWarnings({ "unchecked", "rawtypes" }) protected void configureRuntimeOnTaskService(InternalTaskService internalTaskService, RuntimeEngine engine) { if (internalTaskService != null) { ExternalTaskEventListener listener = new ExternalTaskEventListener(); if (internalTaskService instanceof EventService) { ((EventService)internalTaskService).registerTaskEventListener(listener); } // register task listeners if any RegisterableItemsFactory factory = environment.getRegisterableItemsFactory(); for (TaskLifeCycleEventListener taskListener : factory.getTaskListeners()) { ((EventService<TaskLifeCycleEventListener>)internalTaskService).registerTaskEventListener(taskListener); } if (engine != null && engine instanceof Disposable) { ((Disposable)engine).addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { if (runtime.getTaskService() instanceof EventService) { ((EventService)runtime.getTaskService()).clearTaskEventListeners();; } } }); } } }