Package org.dspace.xmlworkflow
Class XmlWorkflowFactoryImpl
java.lang.Object
org.dspace.xmlworkflow.XmlWorkflowFactoryImpl
- All Implemented Interfaces:
XmlWorkflowFactory
This is injected with the external workflow configuration and is used to
retrieve information about the workflow:
- the workflow for a certain collection
- collections mapped to a certain workflow
- collections not mapped to any workflow
- configured workflows and the default workflow
- workflow action by name
- Author:
- Bram De Schouwer (bram.deschouwer at dot com), Kevin Van de Velde (kevin at atmire dot com), Ben Bosman (ben at atmire dot com), Mark Diggory (markd at atmire dot com), Maria Verdonck (Atmire) on 11/12/2019
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected CollectionServiceprotected HandleServicestatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetActionByName(String workflowActionName) Retrieves aWorkflowActionConfigobject based on its name, should correspond with bean id in workflow-actions.xmlCreates a list of all configured workflows, or returns the cache of this if it was already createdgetAllNonMappedCollectionsHandles(Context context) Returns list of collections that are not mapped to any configured workflow, and thus use the default workflowgetCollectionHandlesMappedToWorkflow(Context context, String workflowName) Return a list of collections that are mapped to the given workflow in the workflow configurationGets the default workflow, i.e. the workflow that is mapped to collection=default in workflow.xmlgetStepByName(String workflowStepName) Retrieves aStepobject based on its name, should correspond with bean id in workflow.xmlgetWorkflow(Collection collection) Retrieve the workflow configuration for a single collectiongetWorkflowByName(String workflowName) Retrieves the workflow configuration by namebooleanisDefaultWorkflow(String workflowName) Check to see if the given workflowName is the workflow configured to be default for collectionsvoidsetWorkflowMapping(Map<String, Workflow> workflowMapping) Inject the mapping from Collection Handle into Workflow.booleanworkflowByThisNameExists(String workflowName) Check to see if there is a workflow configured by the given name
-
Field Details
-
LEGACY_WORKFLOW_NAME
- See Also:
-
collectionService
-
handleService
-
-
Constructor Details
-
XmlWorkflowFactoryImpl
public XmlWorkflowFactoryImpl()
-
-
Method Details
-
getWorkflow
Description copied from interface:XmlWorkflowFactoryRetrieve the workflow configuration for a single collection- Specified by:
getWorkflowin interfaceXmlWorkflowFactory- Parameters:
collection- the collection for which we want our workflow- Returns:
- the workflow configuration
- Throws:
WorkflowConfigurationException- occurs if there is a configuration error in the workflow
-
setWorkflowMapping
Inject the mapping from Collection Handle into Workflow.- Parameters:
workflowMapping- map from Handle name to Workflow object.
-
getWorkflowByName
Description copied from interface:XmlWorkflowFactoryRetrieves the workflow configuration by name- Specified by:
getWorkflowByNamein interfaceXmlWorkflowFactory- Parameters:
workflowName- the name for which we want our workflow- Returns:
- the workflow configuration
- Throws:
WorkflowConfigurationException- occurs if there is no workflow configured by that name
-
getDefaultWorkflow
Description copied from interface:XmlWorkflowFactoryGets the default workflow, i.e. the workflow that is mapped to collection=default in workflow.xml- Specified by:
getDefaultWorkflowin interfaceXmlWorkflowFactory
-
getAllConfiguredWorkflows
Description copied from interface:XmlWorkflowFactoryCreates a list of all configured workflows, or returns the cache of this if it was already created- Specified by:
getAllConfiguredWorkflowsin interfaceXmlWorkflowFactory- Returns:
- List of all configured workflows
-
getCollectionHandlesMappedToWorkflow
Description copied from interface:XmlWorkflowFactoryReturn a list of collections that are mapped to the given workflow in the workflow configuration. * Makes use of a cache so it only retrieves the workflowName->Listif it's not cached - Specified by:
getCollectionHandlesMappedToWorkflowin interfaceXmlWorkflowFactory- Parameters:
context- Dspace contextworkflowName- Name of workflow we want the collections of that are mapped to is- Returns:
- List of collections mapped to the requested workflow
-
getAllNonMappedCollectionsHandles
Description copied from interface:XmlWorkflowFactoryReturns list of collections that are not mapped to any configured workflow, and thus use the default workflow- Specified by:
getAllNonMappedCollectionsHandlesin interfaceXmlWorkflowFactory- Returns:
- List of collections not mapped to any workflow
-
workflowByThisNameExists
Description copied from interface:XmlWorkflowFactoryCheck to see if there is a workflow configured by the given name- Specified by:
workflowByThisNameExistsin interfaceXmlWorkflowFactory- Parameters:
workflowName- Name of a possible configured workflow- Returns:
- True if there is a workflow configured by this name, false otherwise
-
isDefaultWorkflow
Description copied from interface:XmlWorkflowFactoryCheck to see if the given workflowName is the workflow configured to be default for collections- Specified by:
isDefaultWorkflowin interfaceXmlWorkflowFactory- Parameters:
workflowName- Name of workflow to check if default- Returns:
- True if given workflowName is the workflow mapped to default for collections, otherwise false
-
getActionByName
Description copied from interface:XmlWorkflowFactoryRetrieves aWorkflowActionConfigobject based on its name, should correspond with bean id in workflow-actions.xml- Specified by:
getActionByNamein interfaceXmlWorkflowFactory- Parameters:
workflowActionName- Name of workflow action we want to retrieve- Returns:
- Workflow action object corresponding to the given workflowActionName
-
getStepByName
Description copied from interface:XmlWorkflowFactoryRetrieves aStepobject based on its name, should correspond with bean id in workflow.xml- Specified by:
getStepByNamein interfaceXmlWorkflowFactory- Parameters:
workflowStepName- Name of workflow step we want to retrieve- Returns:
- Workflow step object corresponding to the given workflowStepName
-