org.eclipse.modisco.workflow.core

## Interface WorkflowModel

All Superinterfaces:
  WorkflowModelNotifier

    public interface WorkflowModel
    extends WorkflowModelNotifier

API to define the workflow core

Author:
  Nicolas Payneau

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addElement(Element element)` Add a component in the workflow
`void` `exportWorkflow(URI outputUri)` Export the workflow
`java.util.List<Element>` `getAllElements()` Retrieve all components of the workflow
`Element` `getElement(int index)` Retrieve a component at the index specified
`void` `initialize(ILaunchConfiguration configuration)` Initialize or load the workflow
`void` `moveElementDown(int index)` To move an element down in the workflow
`void` `moveElementUp(int index)` To move an element up in the workflow
`void` `moveResource(java.lang.String path)` Move the resource to a new path.
`void` `removeElement(int index)` Delete a component at the index specified
`void` `removeResource(java.lang.String resourcePath)` Allows to remove the resource
`void` `save(ILaunchConfigurationWorkingCopy configuration)` Save the resource
`void` `setElement(int index, Element element)` Change a component in the workflow
`void` `synchronize(java.util.List<Element> elements)` Synchronize resources contained in the workflow

### Methods inherited from interface org.eclipse.modisco.workflow.core.WorkflowModelNotifier

`addListener, removeListener`

### Method Detail

#### getElement

    Element getElement(int index)

Retrieve a component at the index specified

Parameters:
  `index` - Component index
Returns:
  an element

#### getAllElements

    java.util.List<Element> getAllElements()

Retrieve all components of the workflow

Returns:
  an element list

#### addElement

    void addElement(Element element)

Add a component in the workflow

Parameters:
  `element` - Element which represents a launch configuration

#### setElement

    void setElement(int index,
                    Element element)

Change a component in the workflow

Parameters:
  `index` - Component index
  `element` - the new element

#### moveElementUp

    void moveElementUp(int index)

To move an element up in the workflow

Parameters:
  `index` - index of the element to move up

#### moveElementDown

    void moveElementDown(int index)

To move an element down in the workflow

Parameters:
  `index` - index of the element to move down

#### removeElement

    void removeElement(int index)

Delete a component at the index specified

Parameters:
  `index` - Component index

#### initialize

    void initialize(ILaunchConfiguration configuration)

Initialize or load the workflow

Parameters:
  `configuration` - Launch configuration associated

#### save

    void save(ILaunchConfigurationWorkingCopy configuration)

Save the resource

Parameters:
  `configuration` - Launch configuration associated

#### moveResource

    void moveResource(java.lang.String path)

Move the resource to a new path.

Parameters:
  `path` - the new Workflow resource path

#### removeResource

    void removeResource(java.lang.String resourcePath)

Allows to remove the resource

Parameters:
  `path` - Workflow resource path

#### exportWorkflow

    void exportWorkflow(URI outputUri)

Export the workflow

Parameters:
  `outputUri` - The output location

#### synchronize

    void synchronize(java.util.List<Element> elements)

Synchronize resources contained in the workflow

Parameters:
  `elements` - elements to synchronize, contained in the MoDiscoWorkflow