Package org.drools.process.instance

Examples of org.drools.process.instance.WorkItem


   
    public String getNodeName() {
      Node node = getNode();
      if (node == null) {
        String nodeName =  "[Dynamic]";
        WorkItem workItem = getWorkItem();
        if (workItem != null) {
          nodeName += " " + workItem.getParameter("TaskName");
        }
        return nodeName;
      }
      return super.getNodeName();
    }
View Full Code Here


    public static void readWorkItems(MarshallerReaderContext context) throws IOException {
        InternalWorkingMemory wm = context.wm;
        ObjectInputStream stream = context.stream;
        while ( stream.readShort() == PersisterEnums.WORK_ITEM ) {
            WorkItem workItem = readWorkItem( context );
            ((WorkItemManager) wm.getWorkItemManager()).internalAddWorkItem( workItem );
        }
    }
View Full Code Here

  public void internalAbortWorkItem(long id) {
      WorkItemInfo workItemInfo = GrailsIntegration
          .getGormDomainService().getWorkItemInfo(id);
        // work item may have been aborted
        if (workItemInfo != null) {
            WorkItem workItem = workItemInfo.getWorkItem(this.kruntime.getEnvironment());
            WorkItemHandler handler = workItemHandlers.get(workItem.getName());
            if (handler != null) {
                handler.abortWorkItem(workItem, this);
            } else {
                if ( workItems != null ) {
                    workItems.remove( id );
                    throw new WorkItemHandlerNotFoundException( "Could not find work item handler for " +
                            workItem.getName(),
                            workItem.getName() );
                }
            }
            if (workItems != null) {
                workItems.remove(id);
            }
View Full Code Here

  }

  @Override
  public WorkItem getWorkItem(long id) {
    WorkItemInfo workItemInfo = workItems.get(id);
    WorkItem workItem = null;
    if (workItemInfo == null) {
      workItemInfo = GrailsIntegration
          .getGormDomainService().getWorkItemInfo(id);
      if (workItemInfo != null) {
        workItem = workItemInfo.getWorkItem(kruntime.getEnvironment());
View Full Code Here

                .getWorkItemInfo(id);
        }
       
        // work item may have been aborted
        if (workItemInfo != null) {
            WorkItem workItem = (WorkItemImpl) workItemInfo.getWorkItem(env);
            workItem.setResults(results);
            ProcessInstance processInstance =
                kruntime.getProcessInstance(workItem.getProcessInstanceId());
            workItem.setState(WorkItem.COMPLETED);
            // process instance may have finished already
            if (processInstance != null) {
                processInstance.signalEvent("workItemCompleted", workItem);
            }
            GrailsIntegration.getGormDomainService().deleteDomain(workItemInfo);
            if (workItems != null) {
                this.workItems.remove(workItem.getId());
            }
        }
    }
View Full Code Here

            workItemInfo = GrailsIntegration.getGormDomainService().getWorkItemInfo(id);
        }
       
        // work item may have been aborted
        if (workItemInfo != null) {
            WorkItem workItem = (WorkItemImpl) workItemInfo.getWorkItem(env);
            ProcessInstance processInstance = kruntime.getProcessInstance(workItem.getProcessInstanceId());
            workItem.setState(WorkItem.ABORTED);
            // process instance may have finished already
            if (processInstance != null) {
                processInstance.signalEvent("workItemAborted", workItem);
            }
            GrailsIntegration.getGormDomainService().deleteDomain(workItemInfo);
            if (workItems != null) {
                workItems.remove(workItem.getId());
            }
        }
  }
View Full Code Here

    public WorkItem getWorkItem(long id) {
        return workItems.get(id);
    }

    public void completeWorkItem(long id, Map<String, Object> results) {
        WorkItem workItem = workItems.get(new Long(id));
        // work item may have been aborted
        if (workItem != null) {
            (workItem).setResults(results);
            ProcessInstance processInstance = kruntime.getProcessInstance(workItem.getProcessInstanceId());
            (workItem).setState(WorkItem.COMPLETED);
            // process instance may have finished already
            if (processInstance != null) {
                processInstance.signalEvent("workItemCompleted", workItem);
            }
View Full Code Here

    public HumanTaskNode getHumanTaskNode() {
        return (HumanTaskNode) getNode();
    }
   
    protected WorkItem createWorkItem(WorkItemNode workItemNode) {
        WorkItem workItem = super.createWorkItem(workItemNode);
        String actorId = assignWorkItem(workItem);
        if (actorId != null) {
            ((WorkItem) workItem).setParameter("ActorId", actorId);
        }
        return workItem;
View Full Code Here

            triggerCompleted();
        }
    }
   
    public void cancel() {
      WorkItem workItem = getWorkItem();
      if (workItem != null &&
          workItem.getState() != WorkItem.COMPLETED &&
          workItem.getState() != WorkItem.ABORTED) {
        ((WorkItemManager) ((ProcessInstance) getProcessInstance())
        .getWorkingMemory().getWorkItemManager()).internalAbortWorkItem(workItemId);
      }
        super.cancel();
    }
View Full Code Here

   
    public String getNodeName() {
      Node node = getNode();
      if (node == null) {
        String nodeName =  "[Dynamic]";
        WorkItem workItem = getWorkItem();
        if (workItem != null) {
          nodeName += " " + workItem.getParameter("TaskName");
        }
        return nodeName;
      }
      return super.getNodeName();
    }
View Full Code Here

TOP

Related Classes of org.drools.process.instance.WorkItem

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.