Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Workflow actions configuration

API configuration

Wiki Markup
The workflow actions configuration is located in the {{
dspace.dir}
\[dspace\]/config/spring/api/}} directory and is named "workflow-actions.xml". This configuration file describes the different Action Java classes that are used by the workflow framework. Because the workflow framework uses Spring framework for loading these action classes, this configuration file contains Spring configuration.

This file contains the beans for the actions and user selection methods referred to in the workflow.xml. In order for the workflow framework to work properly, each of the required actions must be part of this configuration.

...

User Interface configuration

Wiki Markup
The configuration file for the workflow user interface actions is located in the {
dspace.dir}
{\[dspace]/config/spring/xmlui/}} and is named "workflow-actions-xmlui.xml". BEach bean defined here has an id which is the action identifier and the class is a classpath which links to the xmlui class responsible for generating the User Interface side of the workflow action. Each of the class defined here must extend the
//
 {{org.dspace.app.xmlui.aspect.submission.workflow.AbstractXMLUIAction
//
}} class, this class contains some basic settings for an action and has a method called
//
 {{addWorkflowItemInformation()
//
}} which will render the given item with a show full link so you don't have to write the same code in each of your actions if you want to display the item. The id attribute used for the beans in the configuration must correspond to the id used in the workflow configuration. In case an action requires a User Interface class, the workflow framework will look for a UI class in this configuration file.

Code Block
<?xml version="1.0" encoding="UTF-8"?>
<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:util="http://www.springframework.org/schema/util"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
                           http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd">

    <bean id="{action.id}" class="{classpath}" scope="prototype"/>
    <bean id="{action.id.2}" class="{classpath}" scope="prototype"/>
</beans>

...

Database changes - Original text

Wiki Markup
The changes made to the database can always be found in the {
dspace.src.dir}/etc directory in the file //collection-workflow-changes.sql//.
The workflow uses a separate metadata schema named //workflow// the fields this schema contains can be found in the {dspace.dir}/registries directory and in the file //workflow-types.xml//.
{\[dspace\]/etc/\[database-type\]/xmlworkflow/}} directory in the file {{xml_workflow.sql}}.

Wiki Markup
The workflow uses a separate metadata schema named {{workflow}} the fields this schema contains can be found in the \{{\[dspace\]/config/registries}} directory and in the file {{workflow-types.xml}}.

The tables collectionrole, workflowitemrole were The tables //collectionrole//, //workflowitemrole// where created and are used by the workflow system for the roles (the roles have been described above).

The //tasklistitem// table was altered to contain the step and the action identifiers so that the workflow system knows where in the workflow the item is.

The table //taskowner// was created so that multiple user can claim one item (this was not possible in the old workflow, there the owning user was a field in the workflowitem table).

...