001: /*
002: * Copyright (c) 2002-2003 by OpenSymphony
003: * All rights reserved.
004: */
005: /*
006: * Generated by XDoclet - Do not edit!
007: */
008: package com.opensymphony.workflow.ejb;
009:
010: /**
011: * Remote interface for Workflow.
012: * @author <a href="mailto:plightbo@hotmail.com">Pat Lightbody</a>
013: * @author <a href="mailto:hani@formicary.net">Hani Suleiman</a>
014: * @version $Revision: 1.7 $
015: */
016: public interface WorkflowRemote extends javax.ejb.EJBObject {
017: //~ Methods ////////////////////////////////////////////////////////////////
018:
019: public int[] getAvailableActions(long id)
020: throws java.rmi.RemoteException;
021:
022: /**
023: * Get the available actions for the specified workflow instance.
024: * @param id The workflow instance id.
025: * @param inputs The inputs map to pass on to conditions
026: * @return An array of action id's that can be performed on the specified entry.
027: * @throws IllegalArgumentException if the specified id does not exist, or if its workflow descriptor is no longer available or has become invalid. */
028: public int[] getAvailableActions(long id, java.util.Map inputs)
029: throws java.rmi.RemoteException;
030:
031: public void setConfiguration(
032: com.opensymphony.workflow.config.Configuration configuration)
033: throws java.rmi.RemoteException;
034:
035: public java.util.List getCurrentSteps(long id)
036: throws java.rmi.RemoteException;
037:
038: public int getEntryState(long id) throws java.rmi.RemoteException;
039:
040: public java.util.List getHistorySteps(long id)
041: throws java.rmi.RemoteException;
042:
043: public java.util.Properties getPersistenceProperties()
044: throws java.rmi.RemoteException;
045:
046: /**
047: * Get the PropertySet for the specified workflow ID
048: * @param id The workflow ID */
049: public com.opensymphony.module.propertyset.PropertySet getPropertySet(
050: long id) throws java.rmi.RemoteException;
051:
052: public java.util.List getSecurityPermissions(long id)
053: throws java.rmi.RemoteException;
054:
055: public java.util.List getSecurityPermissions(long id,
056: java.util.Map inputs) throws java.rmi.RemoteException;
057:
058: /**
059: * Returns a workflow definition object associated with the given name.
060: * @param workflowName the name of the workflow
061: * @return the object graph that represents a workflow definition
062: */
063: public com.opensymphony.workflow.loader.WorkflowDescriptor getWorkflowDescriptor(
064: java.lang.String workflowName)
065: throws java.rmi.RemoteException;
066:
067: public java.lang.String getWorkflowName(long id)
068: throws java.rmi.RemoteException;
069:
070: /**
071: * Get a list of workflow names available
072: * @return String[] an array of workflow names.
073: */
074: public java.lang.String[] getWorkflowNames()
075: throws java.rmi.RemoteException;
076:
077: public boolean canInitialize(java.lang.String workflowName,
078: int initialAction) throws java.rmi.RemoteException;
079:
080: public boolean canInitialize(java.lang.String workflowName,
081: int initialAction, java.util.Map inputs)
082: throws java.rmi.RemoteException;
083:
084: public boolean canModifyEntryState(long id, int newState)
085: throws java.rmi.RemoteException;
086:
087: public void changeEntryState(long id, int newState)
088: throws com.opensymphony.workflow.WorkflowException,
089: java.rmi.RemoteException;
090:
091: public void doAction(long id, int actionId, java.util.Map inputs)
092: throws com.opensymphony.workflow.WorkflowException,
093: java.rmi.RemoteException;
094:
095: public void executeTriggerFunction(long id, int triggerId)
096: throws com.opensymphony.workflow.WorkflowException,
097: java.rmi.RemoteException;
098:
099: public long initialize(java.lang.String workflowName,
100: int initialAction, java.util.Map inputs)
101: throws com.opensymphony.workflow.InvalidRoleException,
102: com.opensymphony.workflow.InvalidInputException,
103: com.opensymphony.workflow.StoreException,
104: com.opensymphony.workflow.WorkflowException,
105: java.rmi.RemoteException;
106:
107: public java.util.List query(
108: com.opensymphony.workflow.query.WorkflowQuery query)
109: throws com.opensymphony.workflow.StoreException,
110: java.rmi.RemoteException;
111:
112: public java.util.List query(
113: com.opensymphony.workflow.query.WorkflowExpressionQuery query)
114: throws com.opensymphony.workflow.WorkflowException,
115: java.rmi.RemoteException;
116:
117: public boolean removeWorkflowDescriptor(
118: java.lang.String workflowName)
119: throws com.opensymphony.workflow.FactoryException,
120: java.rmi.RemoteException;
121:
122: public boolean saveWorkflowDescriptor(
123: java.lang.String workflowName,
124: com.opensymphony.workflow.loader.WorkflowDescriptor descriptor,
125: boolean replace)
126: throws com.opensymphony.workflow.FactoryException,
127: java.rmi.RemoteException;
128: }
|