Package org.drools.runtime.process

Examples of org.drools.runtime.process.WorkItemHandler


     
    WorkItemInfo workItemInfo = new WorkItemInfo(workItem);
        em.persist(workItemInfo);
        ((WorkItemImpl) workItem).setId(workItemInfo.getId());
        workItemInfo.update();
        WorkItemHandler handler = (WorkItemHandler) this.workItemHandlers.get(workItem.getName());
      if (handler != null) {
          handler.executeWorkItem(workItem, this);
      } else {
          System.err.println("Could not find work item handler for " + workItem.getName());
      }
  }
View Full Code Here


     
        WorkItemInfo workItemInfo = em.find(WorkItemInfo.class, id);
        // work item may have been aborted
        if (workItemInfo != null) {
          WorkItemImpl workItem = (WorkItemImpl) workItemInfo.getWorkItem();
            WorkItemHandler handler = (WorkItemHandler) this.workItemHandlers.get(workItem.getName());
            if (handler != null) {
                handler.abortWorkItem(workItem, this);
            } else {
                System.err.println("Could not find work item handler for " + workItem.getName());
            }
            em.remove(workItemInfo);
        }
View Full Code Here

        env.set( EnvironmentName.TRANSACTION_MANAGER,
                 TransactionManagerServices.getTransactionManager() );
        StatefulKnowledgeSession session = JPAKnowledgeService.newStatefulKnowledgeSession(kbase, null, env);
        new JPAWorkingMemoryDbLogger(session);
        JPAProcessInstanceDbLog log = new JPAProcessInstanceDbLog();
        session.getWorkItemManager().registerWorkItemHandler("Human Task", new WorkItemHandler() {
      public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
        Map<String, Object> results = new HashMap<String, Object>();
        results.put("Result", "ResultValue");
        manager.completeWorkItem(workItem.getId(), results);
      }
View Full Code Here

    if (this.workItems == null) {
          this.workItems = new HashMap<Long, WorkItemInfo>();
        }
    workItems.put(workItem.getId(), workItemInfo);
       
        WorkItemHandler handler = (WorkItemHandler) this.workItemHandlers.get(workItem.getName());
      if (handler != null) {
          handler.executeWorkItem(workItem, this);
      } else {
          System.err.println("Could not find work item handler for " + workItem.getName());
      }
  }
View Full Code Here

     
        WorkItemInfo workItemInfo = em.find(WorkItemInfo.class, id);
        // work item may have been aborted
        if (workItemInfo != null) {
          WorkItemImpl workItem = (WorkItemImpl) workItemInfo.getWorkItem();
            WorkItemHandler handler = (WorkItemHandler) this.workItemHandlers.get(workItem.getName());
            if (handler != null) {
                handler.abortWorkItem(workItem, this);
            } else {
                System.err.println("Could not find work item handler for " + workItem.getName());
            }
            if (workItems != null) {
              workItems.remove(id);
View Full Code Here

        if ( coverage != null ) workingMemory.addEventListener( coverage );

        //Add stub Work Item Handlers
        String packageUUID = item.getUUID();
        Set<PortableWorkDefinition> workItems = serviceImplementation.loadWorkItemDefinitions( packageUUID );
        WorkItemHandler workItemHandlerStub = getWorkItemHandlerStub();
        for ( PortableWorkDefinition pwd : workItems ) {
            workingMemory.getWorkItemManager().registerWorkItemHandler( pwd.getName(),
                                                                        workItemHandlerStub );
        }
View Full Code Here

    //Creates a stub Work Item Handler that does nothing. A problem is that if the *real* Work Item Handler
    //sets a Result Parameter that is used in other rules the results of running the Test Scenario could (or
    //more likely would) be different than those expected. We can't use the *real* Work Item Handler as we
    //have no control what code it executes unless we look into using SecurityManagers...
    private WorkItemHandler getWorkItemHandlerStub() {
        return new WorkItemHandler() {

            public void executeWorkItem(WorkItem workItem,
                                        WorkItemManager manager) {
                //Does absolute nothing, however could log execution if needed
            }
View Full Code Here

        Package pkg = builder.getPackage();
        RuleBase ruleBase = RuleBaseFactory.newRuleBase();
        ruleBase.addPackage( pkg );
        final List<String> myList = new ArrayList<String>();
        WorkingMemory workingMemory = ruleBase.newStatefulSession();
        workingMemory.getWorkItemManager().registerWorkItemHandler("Log", new WorkItemHandler() {
      public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
        String message = (String) workItem.getParameter("Message");
//        System.out.println(message);
        myList.add(message);
        manager.completeWorkItem(workItem.getId(), null);
View Full Code Here

        this.workItemName = workItemName;
    }

    public Object execute(Context context) {
        StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
        WorkItemHandler workItemHandler = null;
        try {
            Class t = Class.forName( this.handler );
            Constructor c = t.getConstructor( KnowledgeRuntime.class );
            workItemHandler = (WorkItemHandler) c.newInstance( ksession );
        } catch ( InstantiationException ex ) {
View Full Code Here

    if (this.workItems == null) {
          this.workItems = new HashMap<Long, WorkItemInfo>();
        }
    workItems.put(workItem.getId(), workItemInfo);
       
        WorkItemHandler handler = (WorkItemHandler) this.workItemHandlers.get(workItem.getName());
      if (handler != null) {
          handler.executeWorkItem(workItem, this);
      } else {
          throwWorkItemNotFoundException( workItem );
      }
  }
View Full Code Here

TOP

Related Classes of org.drools.runtime.process.WorkItemHandler

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.