Package org.drools.process.instance

Examples of org.drools.process.instance.ProcessInstance


    if (data != null) {
      for (Object o: data) {
        session.insert(o);
      }
    }
    ProcessInstance processInstance = (ProcessInstance) session.startProcess(processId, parameters);
    session.fireAllRules();
    return processInstance;
  }
View Full Code Here


  public Object execute(StatefulSession session) {
    if (processInstanceId == -1) {
      session.getSignalManager().signalEvent(eventType, event);
    } else {
      ProcessInstance processInstance = session.getProcessInstance(processInstanceId);
      if (processInstance != null) {
        processInstance.signalEvent(eventType, processInstance);
      }
    }
    return null;
  }
View Full Code Here

        if (process == null) {
          System.err.println("Could not find process " + processId);
          System.err.println("Aborting process");
          ((ProcessInstance) getProcessInstance()).setState(ProcessInstance.STATE_ABORTED);
        } else {
        ProcessInstance processInstance = ( ProcessInstance )
          ((ProcessInstance) getProcessInstance()).getWorkingMemory()
            .startProcess(processId, parameters);
        if (!getSubProcessNode().isWaitForCompletion()
                || processInstance.getState() == ProcessInstance.STATE_COMPLETED) {
          triggerCompleted();
        } else {
          this.processInstanceId = processInstance.getId();
            addProcessListener();
        }
        }
    }
View Full Code Here

    }
   
    public void cancel() {
        super.cancel();
        if (!getSubProcessNode().isIndependent()) {
            ProcessInstance processInstance = (ProcessInstance)
                ((ProcessInstance) getProcessInstance()).getWorkingMemory()
                    .getProcessInstance(processInstanceId);
            if (processInstance != null) {
              processInstance.setState(ProcessInstance.STATE_ABORTED);
            }
        }
    }
View Full Code Here

            }
            final Process process = ((InternalRuleBase) getRuleBase()).getProcess( processId );
            if ( process == null ) {
                throw new IllegalArgumentException( "Unknown process ID: " + processId );
            }
            ProcessInstance processInstance = startProcess( process,
                                                            parameters );

            if ( processInstance != null ) {
                // start process instance
                getRuleFlowEventSupport().fireBeforeRuleFlowProcessStarted( processInstance,
                                                                            this );
                processInstance.start();
                getRuleFlowEventSupport().fireAfterRuleFlowProcessStarted( processInstance,
                                                                           this );
            }
            return processInstance;
        } finally {
View Full Code Here

        }
        processInstances.put(processInstance.getId(), processInstance);
    }

    public ProcessInstance getProcessInstance(long id) {
      ProcessInstance processInstance = null;
      if (this.processInstances != null) {
        processInstance = this.processInstances.get(id);
        if (processInstance != null) {
          return processInstance;
        }
      }
     
        EntityManager em = (EntityManager) this.workingMemory.getEnvironment().get( EnvironmentName.ENTITY_MANAGER );
        ProcessInstanceInfo processInstanceInfo = em.find( ProcessInstanceInfo.class,
                                                           id );
        if ( processInstanceInfo == null ) {
            return null;
        }
        processInstanceInfo.updateLastReadDate();
        processInstance = (ProcessInstance)
          processInstanceInfo.getProcessInstance(workingMemory,this.workingMemory.getEnvironment());
        Process process = ((InternalRuleBase) workingMemory.getRuleBase()).getProcess( processInstance.getProcessId() );
        if ( process == null ) {
            throw new IllegalArgumentException( "Could not find process " + processInstance.getProcessId() );
        }
        processInstance.setProcess( process );
        if ( processInstance.getWorkingMemory() == null ) {
            processInstance.setWorkingMemory( (InternalWorkingMemory) workingMemory );
            ((ProcessInstanceImpl) processInstance).reconnect();
        }
        return processInstance;
    }
View Full Code Here

        collection.add("one");
        collection.add("two");
        collection.add("three");
        Map<String, Object> params = new HashMap<String, Object>();
        params.put("collection", collection);
        ProcessInstance processInstance = ( ProcessInstance )
            workingMemory.startProcess("org.drools.ForEach", params);
        assertEquals(ProcessInstance.STATE_COMPLETED, processInstance.getState());
        assertEquals(3, myList.size());
    }
View Full Code Here

        workingMemory.fireAllRules();
        assertEquals( 0,
                      list.size() );

        final ProcessInstance processInstance = workingMemory.startProcess( "0" );
        assertEquals( ProcessInstance.STATE_ACTIVE,
                      processInstance.getState() );
        workingMemory.fireAllRules();
        assertEquals( 4,
                      list.size() );
        assertEquals( "Rule1",
                      list.get( 0 ) );
        assertEquals( "Rule3",
                      list.get( 1 ) );
        assertEquals( "Rule2",
                      list.get( 2 ) );
        assertEquals( "Rule4",
                      list.get( 3 ) );
        assertEquals( ProcessInstance.STATE_COMPLETED,
                      processInstance.getState() );
    }
View Full Code Here

        workingMemory.fireAllRules();
        assertEquals( 0,
                      list.size() );

        final ProcessInstance processInstance = workingMemory.startProcess( "0" );
        assertEquals( ProcessInstance.STATE_ACTIVE,
                      processInstance.getState() );
        workingMemory.fireAllRules();
        assertEquals( 4,
                      list.size() );
        assertEquals( "Rule1",
                      list.get( 0 ) );
        assertEquals( "Rule3",
                      list.get( 1 ) );
        assertEquals( "Rule2",
                      list.get( 2 ) );
        assertEquals( "Rule4",
                      list.get( 3 ) );
        assertEquals( ProcessInstance.STATE_COMPLETED,
                      processInstance.getState() );
        // Reset the system property so that automatic conversion should not happen
        System.setProperty( "drools.ruleflow.port",
                            "false" );
    }
View Full Code Here

        // Check they aren't in the Agenda
        assertEquals( 0,
                      agenda.getAgendaGroup( "MAIN" ).size() );

        // Start the process, which shoudl populate the Agenda
        final ProcessInstance processInstance = workingMemory.startProcess( "ruleFlowClear" );
        assertEquals( 4,
                      agenda.getAgendaGroup( "MAIN" ).size() );

        // Check we have 0 activation cancellation events
        assertEquals( 0,
View Full Code Here

TOP

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

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.