public Collection<Object> getObjects() { return getObjects( null ); }
public ProcessInstance startProcess(String processId) { return startProcess( processId, null ); }
ReteooWorkingMemoryInterface rwmi = ((StatefulKnowledgeSessionImpl)((KnowledgeCommandContext)cbsks.getCommandService().getContext()).getStatefulKnowledgesession()).session; if (el instanceof WorkingMemoryEventListener) { rwmi.addEventListener((WorkingMemoryEventListener)el); rwmi.addEventListener((RuleBaseEventListener)el); } else if (el instanceof KnowledgeBaseEventListener) { cbsks.getKnowledgeBase().addEventListener((KnowledgeBaseEventListener)el);
.getCommandService() .execute(setProcInstVariablesCommand);
public ClassLoader getClassLoader(CommandExecutor exec) { ClassLoader cl = null; if ( exec instanceof StatefulKnowledgeSessionImpl ) { cl = ((ReteooRuleBase) ((StatefulKnowledgeSessionImpl) exec).getRuleBase()).getRootClassLoader(); } else if ( exec instanceof StatelessKnowledgeSessionImpl ) { cl = ((ReteooRuleBase) ((StatelessKnowledgeSessionImpl) exec).getRuleBase()).getRootClassLoader(); } else if ( exec instanceof CommandBasedStatefulKnowledgeSession ) { cl = ((ReteooRuleBase) ((KnowledgeBaseImpl) ((CommandBasedStatefulKnowledgeSession) exec).getKnowledgeBase()).getRuleBase()).getRootClassLoader(); } return cl; }
protected void processEventListeners(StatefulKnowledgeSession ksession, Map<String, Object> variables, SessionTemplate template) { List<String> eventListeners = template.getEventListeners(); if (eventListeners != null) { for (String eventListenerDef : eventListeners) { try { EventListener listener = (EventListener) eval(eventListenerDef, variables); if (listener instanceof WorkingMemoryLogger) { // it is enough to create instance of it as it will register all the listeners internally } else if (listener instanceof ProcessEventListener) { ksession.addEventListener((ProcessEventListener) listener); } else if (listener instanceof AgendaEventListener) { ksession.addEventListener((AgendaEventListener) listener); } else if (listener instanceof WorkingMemoryEventListener) { ksession.addEventListener((WorkingMemoryEventListener) listener); } else if (listener instanceof org.drools.event.AgendaEventListener) { ((StatefulKnowledgeSessionImpl) ((KnowledgeCommandContext) ((CommandBasedStatefulKnowledgeSession) ksession) .getCommandService().getContext()).getStatefulKnowledgesession() ) .session.addEventListener((org.drools.event.AgendaEventListener)listener); } } catch (Exception e) { logger.error("Addition of event listener " + eventListenerDef + " failed due to " + e.getMessage(), e); } } } }
public ClassLoader getClassLoader(CommandExecutor exec) { ClassLoader cl = null; if ( exec instanceof StatefulKnowledgeSessionImpl ) { cl = ((ReteooRuleBase) ((StatefulKnowledgeSessionImpl) exec).getRuleBase()).getRootClassLoader(); } else if ( exec instanceof StatelessKnowledgeSessionImpl ) { cl = ((ReteooRuleBase) ((StatelessKnowledgeSessionImpl) exec).getRuleBase()).getRootClassLoader(); } else if ( exec instanceof CommandBasedStatefulKnowledgeSession ) { cl = ((ReteooRuleBase) ((KnowledgeBaseImpl) ((CommandBasedStatefulKnowledgeSession) exec).getKnowledgeBase()).getRuleBase()).getRootClassLoader(); } return cl; }
public WorkingMemoryLogger(final KnowledgeRuntimeEventManager session) { if (session instanceof StatefulKnowledgeSessionImpl) { WorkingMemoryEventManager eventManager = ((StatefulKnowledgeSessionImpl) session).session; eventManager.addEventListener( (WorkingMemoryEventListener) this ); eventManager.addEventListener( (AgendaEventListener) this ); eventManager.addEventListener( (RuleBaseEventListener) this ); InternalProcessRuntime processRuntime = ((StatefulKnowledgeSessionImpl) session).session.getProcessRuntime(); if (processRuntime != null) { processRuntime.addEventListener( (ProcessEventListener) this ); } } else if (session instanceof StatelessKnowledgeSessionImpl) { ((StatelessKnowledgeSessionImpl) session).workingMemoryEventSupport.addEventListener( this ); ((StatelessKnowledgeSessionImpl) session).agendaEventSupport.addEventListener( this ); ((StatelessKnowledgeSessionImpl) session).processEventSupport.addEventListener( this ); ((StatelessKnowledgeSessionImpl) session).getRuleBase().addEventListener( this ); } else if (session instanceof CommandBasedStatefulKnowledgeSession) { ReteooWorkingMemoryInterface eventManager = ((StatefulKnowledgeSessionImpl)((KnowledgeCommandContext)((CommandBasedStatefulKnowledgeSession) session).getCommandService().getContext()).getStatefulKnowledgesession()).session; eventManager.addEventListener( (WorkingMemoryEventListener) this ); eventManager.addEventListener( (AgendaEventListener) this ); InternalProcessRuntime processRuntime = eventManager.getProcessRuntime(); eventManager.addEventListener( (RuleBaseEventListener) this ); if (processRuntime != null) { processRuntime.addEventListener( (ProcessEventListener) this ); } } else { throw new IllegalArgumentException("Not supported session in logger: " + session.getClass()); } }