Documentation is available at WorkflowManager.php
- <?php
- include_once(dirname(__FILE__)."/../OsidManager.php");
- /**
- * <p>
- * WorkflowManager handles the management of Processes and the discovery of
- * unfinished or completed work.
- * </p>
- *
- * <p>
- * All implementations of OsidManager (manager) provide methods for accessing
- * and manipulating the various objects defined in the OSID package. A manager
- * defines an implementation of an OSID. All other OSID objects come either
- * directly or indirectly from the manager. New instances of the OSID objects
- * are created either directly or indirectly by the manager. Because the OSID
- * objects are defined using interfaces, create methods must be used instead
- * of the new operator to create instances of the OSID objects. Create methods
- * are used both to instantiate and persist OSID objects. Using the
- * OsidManager class to define an OSID's implementation allows the application
- * to change OSID implementations by changing the OsidManager package name
- * used to load an implementation. Applications developed using managers
- * permit OSID implementation substitution without changing the application
- * source code. As with all managers, use the OsidLoader to load an
- * implementation of this interface.
- * </p>
- *
- * <p></p>
- *
- * <p>
- * OSID Version: 2.0
- * </p>
- *
- * <p>
- * Licensed under the {@link org.osid.SidImplementationLicenseMIT MIT}
- * O.K.I. OSID Definition License}.
- * </p>
- *
- * @package org.osid.workflow
- */
- class WorkflowManager
- extends OsidManager
- {
- /**
- * Create a process. An unique Id is generated for this Process by the
- * implementation.
- *
- * @param string $displayName
- * @param string $description
- *
- * @return object Process
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}
- *
- * @access public
- */
- function createProcess ( $displayName, $description ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Copy a known Process and provide a new Display Name and Description. A
- * new unique Id is generated by the implementation. All elements of the
- * original Process are included in the copy.
- *
- * @param object Id $originalProcessId
- * @param string $newDisplayName
- * @param string $newDescription
- *
- * @return object Process
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}, {@link }
- * org.osid.workflow.WorkflowException#UNKNOWN_ID UNKNOWN_ID}
- *
- * @access public
- */
- function copyProcess ( $originalProcessId, $newDisplayName, $newDescription ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Delete a process by unique Id.
- *
- * @param object Id $processId
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}, {@link }
- * org.osid.workflow.WorkflowException#UNKNOWN_ID UNKNOWN_ID}
- *
- * @access public
- */
- function deleteProcess ( $processId ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get a Process by unique Id.
- *
- * @param object Id $processId
- *
- * @return object Process
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}, {@link }
- * org.osid.workflow.WorkflowException#UNKNOWN_ID UNKNOWN_ID}
- *
- * @access public
- */
- function getProcess ( $processId ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get all known Processes.
- *
- * @return object ProcessIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}
- *
- * @access public
- */
- function getProcesses () {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get all the known Expressions.
- *
- * @return object ExpressionIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}
- *
- * @access public
- */
- function getExpressions () {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get all the known Expressions of the specified Type.
- *
- * @param object Type $expressionType
- *
- * @return object ExpressionIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}, {@link }
- * org.osid.workflow.WorkflowException#UNKNOWN_TYPE UNKNOWN_TYPE}
- *
- * @access public
- */
- function getExpressionsByType ( $expressionType ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get all the work unfinished to be acted on by anyone.
- *
- * @param object Id $processId
- *
- * @return object WorkIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}, {@link }
- * org.osid.workflow.WorkflowException#UNKNOWN_ID UNKNOWN_ID}
- *
- * @access public
- */
- function getUnfinishedWork ( $processId ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get the Work that has been completed for the specified Process.
- *
- * @param object Id $processId
- *
- * @return object WorkIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}, {@link }
- * org.osid.workflow.WorkflowException#NULL_ARGUMENT
- * NULL_ARGUMENT}, {@link }
- * org.osid.workflow.WorkflowException#UNKNOWN_ID UNKNOWN_ID}
- *
- * @access public
- */
- function getCompletedWork ( $processId ) {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get all the output states for this Step.
- *
- * @return object StringIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}
- *
- * @access public
- */
- function getOutputStates () {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * Get all the Expression Types supported by this implementation.
- *
- * @return object TypeIterator
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}
- *
- * @access public
- */
- function getExpressionTypes () {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * This method indicates whether this implementation supports
- * WorkflowManager methods: copyProcess, createProcess, deleteProcess.
- * Process methods: createInitialStep, createStep, deleteStep, isEnabled,
- * updateDescription, updateDisplayName, updateEnabled. Step methods:
- * addPredecessor, removePredecessor, updateDescription,
- * updateDisplayName, updateInputConditions, updateOutputStates,
- * updateRoleId.
- *
- * @return boolean
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}
- *
- * @access public
- */
- function supportsDesign () {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- /**
- * This method indicates whether this implementation supports
- * WorkflowManager methods: getCompletedWork, getExpressions,
- * getExpressionsByType, getExpressionTypes, getOutputStates, getProcess,
- * getProcesses, getUnfinishedWork. Process methods: createWork,
- * deleteWork, getAvailableWork, getAvailableWorkForRole,
- * getAvailableWorkForStep, getDescription, getDisplayName, getId,
- * getStep, getSteps, getUnfinishedWork, getUnfinishedWorkForRole,
- * getUnfinishedWorkForStep, getWork, getAllWork, haltWork, resumeWork.
- * Step methods: getSuccessors, getDescription, getDisplayName, getId,
- * getInputConditions, getOutputState, getPredecessors, getRoleId,
- * isInitial, isTerminal. Work methods: getDescription, getDisplayName,
- * getHistory, getId, updateDescription, updateDisplayName, getNextSteps,
- * getNextStepsForRole, getQualifierId, updateStepOutputState.
- *
- * @return boolean
- *
- * @throws object WorkflowException An exception with one of the
- * following messages defined in
- * org.osid.workflow.WorkflowException may be thrown: {@link }
- * org.osid.workflow.WorkflowException#OPERATION_FAILED
- * OPERATION_FAILED}, {@link }
- * org.osid.workflow.WorkflowException#PERMISSION_DENIED
- * PERMISSION_DENIED}, {@link }
- * org.osid.workflow.WorkflowException#CONFIGURATION_ERROR
- * CONFIGURATION_ERROR}, {@link }
- * org.osid.workflow.WorkflowException#UNIMPLEMENTED
- * UNIMPLEMENTED}
- *
- * @access public
- */
- function supportsMaintenance () {
- die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
- }
- }
- ?>
Documentation generated on Wed, 19 Sep 2007 10:28:13 -0400 by phpDocumentor 1.3.0RC3