Package de.danet.an.workflow.api

Examples of de.danet.an.workflow.api.ProcessDirectory


     * Test case
     * @throws Exception ...
     */
    public void cleanup () throws Exception {
 
  ProcessDirectory pd = workflowService().processDirectory ();
  for (Iterator i = pd.processes().iterator (); i.hasNext ();) {
      Process proc = (Process)i.next ();
      boolean done = false;
      for (int count = 5; count > 0; count--) {
    try {
        handleProcess (pd, proc);
View Full Code Here


    public DataModel getProcesses () {
        if (processesAsModel == null
            || processSorter != null && processSorter.isModified()) {
            logger.debug ("Retrieving process list");
            processSorter.clearModified();
            ProcessDirectory pd = null;
            try {
                pd = wsc.getWorkflowService().processDirectory();
                SortCriterion sortCriterion = null;
                SortCriterion lastSortCriterion = null;
                for (Iterator i = processSorter.getSortCriteria().iterator();
                     i.hasNext();) {
                    BeanSorter.SortCriterion bsc
                        = (BeanSorter.SortCriterion)i.next();
                    SortCriterion sc = null;
                    if (bsc.isAscending()) {
                        sc = new AscendingOrder(bsc.getProperty());
                    } else {
                        sc = new DescendingOrder(bsc.getProperty());
                    }
                    if (sortCriterion == null) {
                        sortCriterion = sc;
                    }
                    if (lastSortCriterion != null) {
                        lastSortCriterion.setSubCriterion(sc);
                    }
                    lastSortCriterion = sc;
                }
                FilterCriterion processFilter = null;
                if (nameFilter.length() > 0) {
                    processFilter = new PropertyEquality("name", nameFilter);
                }
                if (managerNameFilter.length() > 0) {
                    FilterCriterion fc = new PropertyEquality
                        ("managerName", managerNameFilter);
                    if (processFilter == null) {
                        processFilter = fc;
                    } else {
                        processFilter = new AndOperation(processFilter, fc);
                    }
                }
                if (processKeyFilter.length() > 0) {
                    FilterCriterion fc
                        = new PropertyEquality ("key", processKeyFilter);
                    if (processFilter == null) {
                        processFilter = fc;
                    } else {
                        processFilter = new AndOperation(processFilter, fc);
                    }
                }
                if (contextVariable.length() > 0) {
                    FilterCriterion fc
                        = new ContextVariableEquality
                        (contextVariable, contextValue);
                    if (processFilter == null) {
                        processFilter = fc;
                    } else {
                        processFilter = new AndOperation(processFilter, fc);
                    }
                }
                FacesContext fc = FacesContext.getCurrentInstance();
                PortletEnvironment portletEnv = (PortletEnvironment)
                    fc.getApplication().getVariableResolver().resolveVariable
                    (fc, "processPortletEnv");
                Integer chunk = (Integer)
                    portletEnv.getPreferencesAsIntegers().get("displayedRows");
                processesAsModel = new PaginatedDataModel
                    (pd.processes(processFilter, sortCriterion),
                     chunk.intValue());
            } catch (RemoteException e) {
                JSFUtil.addMessage(FacesMessage.SEVERITY_ERROR, L10N_MSGS,
                                   "resourceCurrentlyUnavailable", null, e);
            } finally {
View Full Code Here

     * Get the process names.
     * @return process names as set of strings.
     */
    public List getProcessNames () {
        if (processNames == null) {
            ProcessDirectory pd = null;
            try {
                pd = wsc.getWorkflowService().processDirectory();
                processNames = new ArrayList ();
                processNames.add(new SelectItem (""));
                for (Iterator i = pd.processNames().iterator();
                     i.hasNext();) {
                    processNames.add (new SelectItem (i.next()));
                }
            } catch (RemoteException e) {
                JSFUtil.addMessage(FacesMessage.SEVERITY_ERROR, L10N_MSGS,
View Full Code Here

    /**
     * @return Returns the managerNames
     */
    public List getManagerNames() {
        if (managerNames == null) {
            ProcessDirectory pd = null;
            try {
                pd = wsc.getWorkflowService().processDirectory();
                managerNames = new ArrayList ();
                managerNames.add(new SelectItem (""));
                for (Iterator i = pd.processMgrNames().iterator();
                     i.hasNext();) {
                    managerNames.add (new SelectItem (i.next()));
                }
            } catch (RemoteException e) {
                JSFUtil.addMessage(FacesMessage.SEVERITY_ERROR, L10N_MSGS,
View Full Code Here

   
    /**
     * Remove given process.
     */
    public void remove (Process process) throws RemoteException {
        ProcessDirectory procDir = wsc.getWorkflowService().processDirectory();
        try {
            procDir.removeProcess(process);
        } catch (CannotRemoveException e) {
            JSFUtil.addMessage (FacesMessage.SEVERITY_ERROR, L10N_MSGS,
                                "cannotRemove", null, e);
        }
        reloadBeforeRendering = true;
View Full Code Here

   
    /**
     * Remove selected processes.
     */
    public String removeSelected () throws RemoteException {
        ProcessDirectory procDir = wsc.getWorkflowService().processDirectory();
        for (Iterator i = selectedProcesses.iterator(); i.hasNext();) {
            Process process = (Process)i.next();
            try {
                procDir.removeProcess(process);
            } catch (CannotRemoveException e) {
                // Probably removed by other user
                logger.debug(e.getMessage(), e);
            }
        }
View Full Code Here

    protected void update() throws RemoteException {
        MethodInvocationBatch mib = new MethodInvocationBatch ();
        WorkflowService wfs = WorkflowServiceConnection
            .instance("workflowServiceConnection").getWorkflowService();
        if (processCache == null) {
            ProcessDirectory pd = wfs.processDirectory();
            mib.addInvocation
                (pd, "lookupProcess",
                 new String[] {"java.lang.String", "java.lang.String"},
                 new Object[] {mgrName, processKey});
            mib.addInvocation(-1, "processDefinition", null, null, false);
View Full Code Here

    public Process process() throws RemoteException {
        if (processCache == null) {
            try {
                WorkflowService wfs = WorkflowServiceConnection
                    .instance("workflowServiceConnection").getWorkflowService();
                ProcessDirectory pd = wfs.processDirectory();
                processCache = pd.lookupProcess(mgrName, processKey);
            } catch (InvalidKeyException e) {
                return null;
            }
        }
        return processCache;
View Full Code Here

     * Remove a given process from the database.
     */
    public void removeProcess3() throws Exception {
  WfRequester cont = new DefaultRequester(workflowService());
  WfProcess process = createProcess("ut-process", "jut999", cont);
  ProcessDirectory pd = null;
  try {
      pd = workflowService().processDirectory ();
      pd.removeProcess ((Process)process);
  } finally {
      workflowService().release (pd);
  }
    }
View Full Code Here

    /**
     * Test.
     */
    public void receiveMessage() throws Exception {
  ProcessDefinitionDirectory procDefDir = null;
  ProcessDirectory procDir = null;
        Channel chan = null;
  try {
      procDefDir = workflowService.processDefinitionDirectory();
      procDir = workflowService.processDirectory();
      ProcessMgr pmgr = procDefDir.processMgr
    ("chabacc", "chabacc_test_sender");
      WfProcess process
    = pmgr.createProcess(new DefaultRequester (workflowService));
      chan = workflowService.getChannel(process, "test_channel");
      WfActivity sleepAct = null;
      for (Iterator i = process.steps().iterator(); i.hasNext();) {
    sleepAct = (WfActivity)i.next ();
    if (sleepAct.name().equals("Wait")) {
        break;
    }
      }
      process.start();
      assertTrue (stateReached (sleepAct, "open.running"));
      Map pd = chan.receiveMessage();
      assertTrue ("Hello world!".equals(pd.get("message")));
      assertTrue (stateReached (process, "closed.completed"));
      procDir.removeProcess(process);
  } finally {
            workflowService.release (chan);
      workflowService.release (procDefDir);
      workflowService.release (procDir);
  }
View Full Code Here

TOP

Related Classes of de.danet.an.workflow.api.ProcessDirectory

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.