class WorkflowCustomAccessType
Same name in other branches
- 8.9.x core/modules/workflows/tests/modules/workflow_type_test/src/Plugin/WorkflowType/WorkflowCustomAccessType.php \Drupal\workflow_type_test\Plugin\WorkflowType\WorkflowCustomAccessType
- 10 core/modules/workflows/tests/modules/workflow_type_test/src/Plugin/WorkflowType/WorkflowCustomAccessType.php \Drupal\workflow_type_test\Plugin\WorkflowType\WorkflowCustomAccessType
- 11.x core/modules/workflows/tests/modules/workflow_type_test/src/Plugin/WorkflowType/WorkflowCustomAccessType.php \Drupal\workflow_type_test\Plugin\WorkflowType\WorkflowCustomAccessType
A test workflow with custom state/transition access rules applied.
Plugin annotation
@WorkflowType(
id = "workflow_custom_access_type",
label = @Translation("Workflow Custom Access Type Test"),
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\workflows\Plugin\WorkflowTypeBase extends \Drupal\Component\Plugin\PluginBase implements \Drupal\workflows\WorkflowTypeInterface uses \Drupal\Core\Plugin\PluginWithFormsTrait
- class \Drupal\workflow_type_test\Plugin\WorkflowType\WorkflowCustomAccessType extends \Drupal\workflows\Plugin\WorkflowTypeBase
- class \Drupal\workflows\Plugin\WorkflowTypeBase extends \Drupal\Component\Plugin\PluginBase implements \Drupal\workflows\WorkflowTypeInterface uses \Drupal\Core\Plugin\PluginWithFormsTrait
Expanded class hierarchy of WorkflowCustomAccessType
1 file declares its use of WorkflowCustomAccessType
- workflow_type_test.module in core/
modules/ workflows/ tests/ modules/ workflow_type_test/ workflow_type_test.module - Module file for workflow_type_test.
File
-
core/
modules/ workflows/ tests/ modules/ workflow_type_test/ src/ Plugin/ WorkflowType/ WorkflowCustomAccessType.php, line 18
Namespace
Drupal\workflow_type_test\Plugin\WorkflowTypeView source
class WorkflowCustomAccessType extends WorkflowTypeBase {
/**
* {@inheritdoc}
*/
public function defaultConfiguration() {
return [
'states' => [
'cannot_update' => [
'label' => 'Cannot Update State',
'weight' => 0,
],
'cannot_delete' => [
'label' => 'Cannot Delete State',
'weight' => 0,
],
],
'transitions' => [
'cannot_update' => [
'label' => 'Cannot Update Transition',
'to' => 'cannot_update',
'weight' => 0,
'from' => [
'cannot_update',
],
],
'cannot_delete' => [
'label' => 'Cannot Delete Transition',
'to' => 'cannot_delete',
'weight' => 1,
'from' => [
'cannot_delete',
],
],
],
];
}
/**
* Implements hook_ENTITY_TYPE_access().
*
* @see workflow_type_test_workflow_access
*/
public static function workflowAccess(WorkflowInterface $entity, $operation, AccountInterface $account) {
$forbidden_operations = \Drupal::state()->get('workflow_type_test_forbidden_operations', []);
return in_array($operation, $forbidden_operations, TRUE) ? AccessResult::forbidden() : AccessResult::neutral();
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
PluginBase::$configuration | protected | property | Configuration information passed into the plugin. | ||
PluginBase::$pluginDefinition | protected | property | The plugin implementation definition. | ||
PluginBase::$pluginId | protected | property | The plugin_id. | ||
PluginBase::DERIVATIVE_SEPARATOR | constant | A string which is used to separate base plugin IDs from the derivative ID. | |||
PluginBase::getBaseId | public | function | Gets the base_plugin_id of the plugin instance. | Overrides DerivativeInspectionInterface::getBaseId | |
PluginBase::getDerivativeId | public | function | Gets the derivative_id of the plugin instance. | Overrides DerivativeInspectionInterface::getDerivativeId | |
PluginBase::getPluginDefinition | public | function | Gets the definition of the plugin implementation. | Overrides PluginInspectionInterface::getPluginDefinition | |
PluginBase::getPluginId | public | function | Gets the plugin_id of the plugin instance. | Overrides PluginInspectionInterface::getPluginId | |
PluginBase::isConfigurable | public | function | Determines if the plugin is configurable. | ||
PluginWithFormsTrait::getFormClass | public | function | Implements \Drupal\Core\Plugin\PluginWithFormsInterface::getFormClass(). | ||
PluginWithFormsTrait::hasFormClass | public | function | Implements \Drupal\Core\Plugin\PluginWithFormsInterface::hasFormClass(). | ||
WorkflowCustomAccessType::defaultConfiguration | public | function | Gets default configuration for this plugin. | Overrides WorkflowTypeBase::defaultConfiguration | |
WorkflowCustomAccessType::workflowAccess | public static | function | Implements hook_ENTITY_TYPE_access(). | ||
WorkflowTypeBase::addState | public | function | Adds a state to the workflow. | Overrides WorkflowTypeInterface::addState | 1 |
WorkflowTypeBase::addTransition | public | function | Adds a transition to the workflow. | Overrides WorkflowTypeInterface::addTransition | |
WorkflowTypeBase::calculateDependencies | public | function | Calculates dependencies for the configured plugin. | Overrides DependentPluginInterface::calculateDependencies | 1 |
WorkflowTypeBase::deleteState | public | function | Deletes a state from the workflow. | Overrides WorkflowTypeInterface::deleteState | 1 |
WorkflowTypeBase::deleteTransition | public | function | Deletes a transition. | Overrides WorkflowTypeInterface::deleteTransition | |
WorkflowTypeBase::getConfiguration | public | function | Gets this plugin's configuration. | Overrides ConfigurableInterface::getConfiguration | 1 |
WorkflowTypeBase::getInitialState | public | function | Gets the initial state for the workflow. | Overrides WorkflowTypeInterface::getInitialState | 1 |
WorkflowTypeBase::getNextWeight | protected | function | Gets the weight for a new state or transition. | ||
WorkflowTypeBase::getRequiredStates | public | function | Gets the required states of workflow type. | Overrides WorkflowTypeInterface::getRequiredStates | 1 |
WorkflowTypeBase::getState | public | function | Gets a workflow state. | Overrides WorkflowTypeInterface::getState | 2 |
WorkflowTypeBase::getStates | public | function | Gets state objects for the provided state IDs. | Overrides WorkflowTypeInterface::getStates | 1 |
WorkflowTypeBase::getTransition | public | function | Gets a transition object for the provided transition ID. | Overrides WorkflowTypeInterface::getTransition | |
WorkflowTypeBase::getTransitionFromStateToState | public | function | Gets a transition from state to state. | Overrides WorkflowTypeInterface::getTransitionFromStateToState | |
WorkflowTypeBase::getTransitionIdFromStateToState | protected | function | Gets the transition ID from state to state. | ||
WorkflowTypeBase::getTransitions | public | function | Gets transition objects for the provided transition IDs. | Overrides WorkflowTypeInterface::getTransitions | |
WorkflowTypeBase::getTransitionsForState | public | function | Gets the transitions for a state for the provided direction. | Overrides WorkflowTypeInterface::getTransitionsForState | |
WorkflowTypeBase::hasState | public | function | Determines if the workflow has a state with the provided ID. | Overrides WorkflowTypeInterface::hasState | 1 |
WorkflowTypeBase::hasTransition | public | function | Determines if a transition exists. | Overrides WorkflowTypeInterface::hasTransition | |
WorkflowTypeBase::hasTransitionFromStateToState | public | function | Determines if a transition from state to state exists. | Overrides WorkflowTypeInterface::hasTransitionFromStateToState | |
WorkflowTypeBase::label | public | function | Gets the label for the workflow type. | Overrides WorkflowTypeInterface::label | |
WorkflowTypeBase::labelWeightMultisort | protected static | function | Sort states or transitions by weight, label, and key. | ||
WorkflowTypeBase::onDependencyRemoval | public | function | Informs the plugin that a dependency of the workflow will be deleted. | Overrides WorkflowTypeInterface::onDependencyRemoval | 2 |
WorkflowTypeBase::setConfiguration | public | function | Sets the configuration for this plugin instance. | Overrides ConfigurableInterface::setConfiguration | |
WorkflowTypeBase::setStateLabel | public | function | Sets a state's label. | Overrides WorkflowTypeInterface::setStateLabel | 1 |
WorkflowTypeBase::setStateWeight | public | function | Sets a state's weight value. | Overrides WorkflowTypeInterface::setStateWeight | 1 |
WorkflowTypeBase::setTransitionFromStates | public | function | Sets a transition's from states. | Overrides WorkflowTypeInterface::setTransitionFromStates | |
WorkflowTypeBase::setTransitionLabel | public | function | Sets a transition's label. | Overrides WorkflowTypeInterface::setTransitionLabel | |
WorkflowTypeBase::setTransitionWeight | public | function | Sets a transition's weight. | Overrides WorkflowTypeInterface::setTransitionWeight | |
WorkflowTypeBase::VALID_ID_REGEX | constant | A regex for matching a valid state/transition machine name. | |||
WorkflowTypeBase::workflowHasData | public | function | Determines if the workflow is being has data associated with it. | Overrides WorkflowTypeInterface::workflowHasData | 1 |
WorkflowTypeBase::workflowStateHasData | public | function | Determines if the workflow state has data associated with it. | Overrides WorkflowTypeInterface::workflowStateHasData | 1 |
WorkflowTypeBase::__construct | public | function | Constructs a \Drupal\Component\Plugin\PluginBase object. | Overrides PluginBase::__construct | 1 |
WorkflowTypeInterface::PLUGIN_FORM_KEY | constant | The key of the global workflow plugin form. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.