class PredefinedStatesWorkflowTestType in Drupal 10
Same name and namespace in other branches
- 8 core/modules/workflows/tests/modules/workflow_type_test/src/Plugin/WorkflowType/PredefinedStatesWorkflowTestType.php \Drupal\workflow_type_test\Plugin\WorkflowType\PredefinedStatesWorkflowTestType
- 9 core/modules/workflows/tests/modules/workflow_type_test/src/Plugin/WorkflowType/PredefinedStatesWorkflowTestType.php \Drupal\workflow_type_test\Plugin\WorkflowType\PredefinedStatesWorkflowTestType
Test workflow type.
Plugin annotation
@WorkflowType(
id = "predefined_states_workflow_test_type",
label = @Translation("Predefined States Workflow Test Type"),
required_states = {
"pay_blinds",
"bet",
"raise",
"fold",
}
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\workflows\Plugin\WorkflowTypeBase implements WorkflowTypeInterface uses PluginWithFormsTrait
- class \Drupal\workflow_type_test\Plugin\WorkflowType\PredefinedStatesWorkflowTestType
- class \Drupal\workflows\Plugin\WorkflowTypeBase implements WorkflowTypeInterface uses PluginWithFormsTrait
Expanded class hierarchy of PredefinedStatesWorkflowTestType
File
- core/
modules/ workflows/ tests/ modules/ workflow_type_test/ src/ Plugin/ WorkflowType/ PredefinedStatesWorkflowTestType.php, line 22
Namespace
Drupal\workflow_type_test\Plugin\WorkflowTypeView source
class PredefinedStatesWorkflowTestType extends WorkflowTypeBase {
/**
* {@inheritdoc}
*/
public function getStates($state_ids = NULL) {
return array_filter([
'pay_blinds' => new State($this, 'pay_blinds', 'Pay Blinds'),
'bet' => new State($this, 'bet', 'Bet'),
'raise' => new State($this, 'raise', 'Raise'),
'fold' => new State($this, 'fold', 'Fold'),
], function ($state) use ($state_ids) {
return is_array($state_ids) ? in_array($state
->id(), $state_ids) : TRUE;
});
}
/**
* {@inheritdoc}
*/
public function getState($state_id) {
$states = $this
->getStates();
if (!isset($states[$state_id])) {
throw new \InvalidArgumentException("The state '{$state_id}' does not exist in workflow.'");
}
return $states[$state_id];
}
/**
* {@inheritdoc}
*/
public function hasState($state_id) {
$states = $this
->getStates();
return isset($states[$state_id]);
}
/**
* {@inheritdoc}
*/
public function addState($state_id, $label) {
// States cannot be added on this workflow.
return $this;
}
/**
* {@inheritdoc}
*/
public function setStateLabel($state_id, $label) {
// States cannot be altered on this workflow.
return $this;
}
/**
* {@inheritdoc}
*/
public function setStateWeight($state_id, $weight) {
// States cannot be altered on this workflow.
return $this;
}
/**
* {@inheritdoc}
*/
public function deleteState($state_id) {
// States cannot be deleted on this workflow.
return $this;
}
/**
* {@inheritdoc}
*/
public function defaultConfiguration() {
return [
'transitions' => [],
];
}
}