interface WorkflowTypeInterface
Same name in other branches
- 9 core/modules/workflows/src/WorkflowTypeInterface.php \Drupal\workflows\WorkflowTypeInterface
- 8.9.x core/modules/workflows/src/WorkflowTypeInterface.php \Drupal\workflows\WorkflowTypeInterface
- 11.x core/modules/workflows/src/WorkflowTypeInterface.php \Drupal\workflows\WorkflowTypeInterface
An interface for Workflow type plugins.
Hierarchy
- interface \Drupal\Component\Plugin\ConfigurableInterface; interface \Drupal\Component\Plugin\DependentPluginInterface; interface \Drupal\Component\Plugin\DerivativeInspectionInterface; interface \Drupal\Core\Plugin\PluginWithFormsInterface extends \Drupal\Component\Plugin\PluginInspectionInterface
- interface \Drupal\workflows\WorkflowTypeInterface extends \Drupal\Core\Plugin\PluginWithFormsInterface \Drupal\Component\Plugin\DerivativeInspectionInterface \Drupal\Component\Plugin\ConfigurableInterface \Drupal\Component\Plugin\DependentPluginInterface
Expanded class hierarchy of WorkflowTypeInterface
All classes that implement WorkflowTypeInterface
5 files declare their use of WorkflowTypeInterface
- ContentModerationInterface.php in core/
modules/ content_moderation/ src/ Plugin/ WorkflowType/ ContentModerationInterface.php - StateTest.php in core/
modules/ workflows/ tests/ src/ Unit/ StateTest.php - TransitionTest.php in core/
modules/ workflows/ tests/ src/ Unit/ TransitionTest.php - WorkflowEditForm.php in core/
modules/ workflows/ src/ Form/ WorkflowEditForm.php - WorkflowTypeBase.php in core/
modules/ workflows/ src/ Plugin/ WorkflowTypeBase.php
1 string reference to 'WorkflowTypeInterface'
- workflows.schema.yml in core/
modules/ workflows/ config/ schema/ workflows.schema.yml - core/modules/workflows/config/schema/workflows.schema.yml
File
-
core/
modules/ workflows/ src/ WorkflowTypeInterface.php, line 13
Namespace
Drupal\workflowsView source
interface WorkflowTypeInterface extends PluginWithFormsInterface, DerivativeInspectionInterface, ConfigurableInterface, DependentPluginInterface {
/**
* The key of the global workflow plugin form.
*/
const PLUGIN_FORM_KEY = 'configure';
/**
* Gets the label for the workflow type.
*
* @return string
* The workflow type label.
*/
public function label();
/**
* Determines if the workflow is being has data associated with it.
*
* @internal
* Marked as internal until it's validated this should form part of the
* public API in https://www.drupal.org/node/2897148.
*
* @param \Drupal\workflows\WorkflowInterface $workflow
* The workflow to check.
*
* @return bool
* TRUE if the workflow is being used, FALSE if not.
*/
public function workflowHasData(WorkflowInterface $workflow);
/**
* Determines if the workflow state has data associated with it.
*
* @internal
* Marked as internal until it's validated this should form part of the
* public API in https://www.drupal.org/node/2897148.
*
* @param \Drupal\workflows\WorkflowInterface $workflow
* The workflow to check.
* @param \Drupal\workflows\StateInterface $state
* The workflow state to check.
*
* @return bool
* TRUE if the workflow state is being used, FALSE if not.
*/
public function workflowStateHasData(WorkflowInterface $workflow, StateInterface $state);
/**
* Gets the initial state for the workflow.
*
* @return \Drupal\workflows\StateInterface
* The initial state.
*/
public function getInitialState();
/**
* Gets the required states of workflow type.
*
* This is usually specified in the workflow type annotation.
*
* @return string[]
* The required states.
*
* @see \Drupal\workflows\Annotation\WorkflowType
*/
public function getRequiredStates();
/**
* Informs the plugin that a dependency of the workflow will be deleted.
*
* @param array $dependencies
* An array of dependencies that will be deleted keyed by dependency type.
*
* @return bool
* TRUE if the workflow settings have been changed, FALSE if not.
*
* @see \Drupal\Core\Config\ConfigEntityInterface::onDependencyRemoval()
*
* @todo https://www.drupal.org/node/2579743 make part of a generic interface.
*/
public function onDependencyRemoval(array $dependencies);
/**
* Adds a state to the workflow.
*
* @param string $state_id
* The state's ID.
* @param string $label
* The state's label.
*
* @return $this
*
* @throws \InvalidArgumentException
* Thrown if a state already exists or state ID is invalid.
*/
public function addState($state_id, $label);
/**
* Determines if the workflow has a state with the provided ID.
*
* @param string $state_id
* The state's ID.
*
* @return bool
* TRUE if the workflow has a state with the provided ID, FALSE if not.
*/
public function hasState($state_id);
/**
* Gets state objects for the provided state IDs.
*
* @param string[] $state_ids
* A list of state IDs to get. If NULL then all states will be returned.
*
* @return \Drupal\workflows\StateInterface[]
* An array of workflow states, keyed by state IDs.
*
* @throws \InvalidArgumentException
* Thrown if $state_ids contains a state ID that does not exist.
*/
public function getStates($state_ids = NULL);
/**
* Gets a workflow state.
*
* @param string $state_id
* The state's ID.
*
* @return \Drupal\workflows\StateInterface
* The workflow state.
*
* @throws \InvalidArgumentException
* Thrown if $state_id does not exist.
*/
public function getState($state_id);
/**
* Sets a state's label.
*
* @param string $state_id
* The state ID to set the label for.
* @param string $label
* The state's label.
*
* @return $this
*/
public function setStateLabel($state_id, $label);
/**
* Sets a state's weight value.
*
* @param string $state_id
* The state ID to set the weight for.
* @param int $weight
* The state's weight.
*
* @return $this
*/
public function setStateWeight($state_id, $weight);
/**
* Deletes a state from the workflow.
*
* @param string $state_id
* The state ID to delete.
*
* @return $this
* The workflow type plugin.
*
* @throws \InvalidArgumentException
* Thrown if $state_id does not exist.
*/
public function deleteState($state_id);
/**
* Adds a transition to the workflow.
*
* @param string $id
* The transition ID.
* @param string $label
* The transition's label.
* @param array $from_state_ids
* The state IDs to transition from.
* @param string $to_state_id
* The state ID to transition to.
*
* @return $this
*
* @throws \InvalidArgumentException
* Thrown if either state does not exist.
*/
public function addTransition($id, $label, array $from_state_ids, $to_state_id);
/**
* Gets a transition object for the provided transition ID.
*
* @param string $transition_id
* A transition ID.
*
* @return \Drupal\workflows\TransitionInterface
* The transition.
*
* @throws \InvalidArgumentException
* Thrown if $transition_id does not exist.
*/
public function getTransition($transition_id);
/**
* Determines if a transition exists.
*
* @param string $transition_id
* The transition ID.
*
* @return bool
* TRUE if the transition exists, FALSE if not.
*/
public function hasTransition($transition_id);
/**
* Gets transition objects for the provided transition IDs.
*
* @param string[] $transition_ids
* A list of transition IDs to get. If NULL then all transitions will be
* returned.
*
* @return \Drupal\workflows\TransitionInterface[]
* An array of transition objects.
*
* @throws \InvalidArgumentException
* Thrown if $transition_ids contains a transition ID that does not exist.
*/
public function getTransitions(?array $transition_ids = NULL);
/**
* Gets the transitions for a state for the provided direction.
*
* @param $state_id
* The state to get transitions for.
* @param string $direction
* (optional) The direction of the transition, defaults to
* TransitionInterface::DIRECTION_FROM. Possible values are:
* TransitionInterface::DIRECTION_FROM or TransitionInterface::DIRECTION_TO.
*
* @return \Drupal\workflows\TransitionInterface[]
* An array of the transition objects for the state in the given direction,
* keyed by transition ID.
*
* @see \Drupal\workflows\TransitionInterface::DIRECTION_FROM
* @see \Drupal\workflows\TransitionInterface::DIRECTION_TO
*/
public function getTransitionsForState($state_id, $direction = TransitionInterface::DIRECTION_FROM);
/**
* Gets a transition from state to state.
*
* @param string $from_state_id
* The state ID to transition from.
* @param string $to_state_id
* The state ID to transition to.
*
* @return \Drupal\workflows\TransitionInterface
* The transitions.
*
* @throws \InvalidArgumentException
* Thrown if the transition does not exist.
*/
public function getTransitionFromStateToState($from_state_id, $to_state_id);
/**
* Determines if a transition from state to state exists.
*
* @param string $from_state_id
* The state ID to transition from.
* @param string $to_state_id
* The state ID to transition to.
*
* @return bool
* TRUE if the transition exists, FALSE if not.
*/
public function hasTransitionFromStateToState($from_state_id, $to_state_id);
/**
* Sets a transition's label.
*
* @param string $transition_id
* The transition ID.
* @param string $label
* The transition's label.
*
* @return $this
*
* @throws \InvalidArgumentException
* Thrown if the transition does not exist.
*/
public function setTransitionLabel($transition_id, $label);
/**
* Sets a transition's weight.
*
* @param string $transition_id
* The transition ID.
* @param int $weight
* The transition's weight.
*
* @return $this
*
* @throws \InvalidArgumentException
* Thrown if the transition does not exist.
*/
public function setTransitionWeight($transition_id, $weight);
/**
* Sets a transition's from states.
*
* @param string $transition_id
* The transition ID.
* @param array $from_state_ids
* The state IDs to transition from.
*
* @return $this
*
* @throws \InvalidArgumentException
* Thrown if the transition does not exist or the states do not exist.
*/
public function setTransitionFromStates($transition_id, array $from_state_ids);
/**
* Deletes a transition.
*
* @param string $transition_id
* The transition ID.
*
* @return $this
*
* @throws \InvalidArgumentException
* Thrown if the transition does not exist.
*/
public function deleteTransition($transition_id);
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overrides |
---|---|---|---|---|
ConfigurableInterface::defaultConfiguration | public | function | Gets default configuration for this plugin. | 13 |
ConfigurableInterface::getConfiguration | public | function | Gets this plugin's configuration. | 13 |
ConfigurableInterface::setConfiguration | public | function | Sets the configuration for this plugin instance. | 13 |
DependentPluginInterface::calculateDependencies | public | function | Calculates dependencies for the configured plugin. | 19 |
DerivativeInspectionInterface::getBaseId | public | function | Gets the base_plugin_id of the plugin instance. | 1 |
DerivativeInspectionInterface::getDerivativeId | public | function | Gets the derivative_id of the plugin instance. | 1 |
PluginInspectionInterface::getPluginDefinition | public | function | Gets the definition of the plugin implementation. | 6 |
PluginInspectionInterface::getPluginId | public | function | Gets the plugin_id of the plugin instance. | 2 |
PluginWithFormsInterface::getFormClass | public | function | Gets the form class for the given operation. | |
PluginWithFormsInterface::hasFormClass | public | function | Gets whether the plugin has a form class for the given operation. | |
WorkflowTypeInterface::addState | public | function | Adds a state to the workflow. | 1 |
WorkflowTypeInterface::addTransition | public | function | Adds a transition to the workflow. | 1 |
WorkflowTypeInterface::deleteState | public | function | Deletes a state from the workflow. | 1 |
WorkflowTypeInterface::deleteTransition | public | function | Deletes a transition. | 1 |
WorkflowTypeInterface::getInitialState | public | function | Gets the initial state for the workflow. | 2 |
WorkflowTypeInterface::getRequiredStates | public | function | Gets the required states of workflow type. | 1 |
WorkflowTypeInterface::getState | public | function | Gets a workflow state. | 1 |
WorkflowTypeInterface::getStates | public | function | Gets state objects for the provided state IDs. | 1 |
WorkflowTypeInterface::getTransition | public | function | Gets a transition object for the provided transition ID. | 1 |
WorkflowTypeInterface::getTransitionFromStateToState | public | function | Gets a transition from state to state. | 1 |
WorkflowTypeInterface::getTransitions | public | function | Gets transition objects for the provided transition IDs. | 1 |
WorkflowTypeInterface::getTransitionsForState | public | function | Gets the transitions for a state for the provided direction. | 1 |
WorkflowTypeInterface::hasState | public | function | Determines if the workflow has a state with the provided ID. | 1 |
WorkflowTypeInterface::hasTransition | public | function | Determines if a transition exists. | 1 |
WorkflowTypeInterface::hasTransitionFromStateToState | public | function | Determines if a transition from state to state exists. | 1 |
WorkflowTypeInterface::label | public | function | Gets the label for the workflow type. | 1 |
WorkflowTypeInterface::onDependencyRemoval | public | function | Informs the plugin that a dependency of the workflow will be deleted. | 1 |
WorkflowTypeInterface::PLUGIN_FORM_KEY | constant | The key of the global workflow plugin form. | ||
WorkflowTypeInterface::setStateLabel | public | function | Sets a state's label. | 1 |
WorkflowTypeInterface::setStateWeight | public | function | Sets a state's weight value. | 1 |
WorkflowTypeInterface::setTransitionFromStates | public | function | Sets a transition's from states. | 1 |
WorkflowTypeInterface::setTransitionLabel | public | function | Sets a transition's label. | 1 |
WorkflowTypeInterface::setTransitionWeight | public | function | Sets a transition's weight. | 1 |
WorkflowTypeInterface::workflowHasData | public | function | Determines if the workflow is being has data associated with it. | 1 |
WorkflowTypeInterface::workflowStateHasData | public | function | Determines if the workflow state has data associated with it. | 1 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.