public void registerWorkItemHandler(String workItemName, WorkItemHandler handler) { delegate.registerWorkItemHandler(workItemName, new WorkItemHandlerKieAdapter(handler)); }
public Object execute(Context context) { StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession(); WorkItemHandler workItemHandler = null; try { Class t = Class.forName(handler); Constructor c = t.getConstructor(KnowledgeRuntime.class); workItemHandler = (WorkItemHandler) c.newInstance(ksession); } catch (InstantiationException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } catch (IllegalArgumentException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } catch (InvocationTargetException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } catch (NoSuchMethodException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } catch (SecurityException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } catch (ClassNotFoundException ex) { Logger.getLogger(RegisterRemoteWorkItemHandlerCommand.class.getName()).log(Level.SEVERE, null, ex); } ksession.getWorkItemManager().registerWorkItemHandler(workItemName, workItemHandler); return null; }
public Object execute(Context context) { StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession(); ksession.getWorkItemManager().registerWorkItemHandler(workItemName, handler); return null; }
private StatefulKnowledgeSession getKnowledgeSession() { StatefulKnowledgeSession session = null; session = JPAKnowledgeService.newStatefulKnowledgeSession( kbase, null, env); for (Map.Entry<String, WorkItemHandler> entry : this.workItemsHandlers.entrySet()) { session.getWorkItemManager().registerWorkItemHandler(entry.getKey(), entry.getValue()); } //Configures a logger for the session KnowledgeRuntimeLoggerFactory.newConsoleLogger(session); return session; } }
ex ); ksession.getWorkItemManager().registerWorkItemHandler( this.workItemName, workItemHandler ); return null;
public WorkItemManager getWorkItemManager() { if ( workItemManager == null ) { workItemManager = config.getWorkItemManagerFactory().createWorkItemManager( this.getKnowledgeRuntime() ); Map<String, Object> params = new HashMap<String, Object>(); params.put("ksession", this.getKnowledgeRuntime()); Map<String, WorkItemHandler> workItemHandlers = config.getWorkItemHandlers(params); if ( workItemHandlers != null ) { for ( Map.Entry<String, WorkItemHandler> entry : workItemHandlers.entrySet() ) { workItemManager.registerWorkItemHandler( entry.getKey(), entry.getValue() ); } } } return workItemManager; }
throw new IllegalStateException("No WorkItemHandler Instantiated for " + workItemName); ksession.getWorkItemManager().registerWorkItemHandler(workItemName, reflectionHandler);
protected void processWorkItemHandlers(StatefulKnowledgeSession ksession, Map<String, Object> variables, Properties consoleProperties, SessionTemplate template) { Map<String, String> handlers = template.getWorkItemHandlers(); if (handlers != null) { Iterator<String> workItemNames = handlers.keySet().iterator(); while (workItemNames.hasNext()) { String workItemName = (String) workItemNames.next(); String handlerDef = handlers.get(workItemName); try { WorkItemHandler handler = (WorkItemHandler) eval(handlerDef, variables); if (workItemName.equalsIgnoreCase("Human Task")) { invokeMethod("setIpAddress", handler, new Class[]{String.class}, Utils.getTaskServiceHost(consoleProperties)); invokeMethod("setPort", handler, new Class[]{int.class}, Utils.getTaskServicePort(consoleProperties)); invokeMethod("connect", handler, new Class[0], new Object[0]); } ksession.getWorkItemManager().registerWorkItemHandler(workItemName, handler); } catch (Exception e) { logger.error("Registration of work item handler " + workItemName + " failed due to " + e.getMessage(), e); } } } }
private StatefulKnowledgeSession getKnowledgeSession() { StatefulKnowledgeSession ksession = null; if (ksessionId == null) { ksession = JPAKnowledgeService.newStatefulKnowledgeSession( kbase, null, env); ksessionId = ksession.getId(); } else { ksession = JPAKnowledgeService.loadStatefulKnowledgeSession( ksessionId, kbase, null, env); } for (Map.Entry<String, WorkItemHandler> entry : this.workItemsHandlers.entrySet()) { ksession.getWorkItemManager().registerWorkItemHandler(entry.getKey(), entry.getValue()); } //Configures a logger for the session KnowledgeRuntimeLoggerFactory.newConsoleLogger(ksession); return ksession; } }
myksession.getWorkItemManager().registerWorkItemHandler("Human Task", hornetQHTWorkItemHandler); KnowledgeRuntimeLoggerFactory.newConsoleLogger(myksession); myksession.addEventListener(new DebugAgendaEventListener());