Chris@0: setConfiguration($configuration); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function isNegated() { Chris@0: return !empty($this->configuration['negate']); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function buildConfigurationForm(array $form, FormStateInterface $form_state) { Chris@0: if ($form_state instanceof SubformStateInterface) { Chris@0: $form_state = $form_state->getCompleteFormState(); Chris@0: } Chris@0: $contexts = $form_state->getTemporaryValue('gathered_contexts') ?: []; Chris@0: $form['context_mapping'] = $this->addContextAssignmentElement($this, $contexts); Chris@0: $form['negate'] = [ Chris@0: '#type' => 'checkbox', Chris@0: '#title' => $this->t('Negate the condition'), Chris@0: '#default_value' => $this->configuration['negate'], Chris@0: ]; Chris@0: return $form; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function validateConfigurationForm(array &$form, FormStateInterface $form_state) { Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function submitConfigurationForm(array &$form, FormStateInterface $form_state) { Chris@0: $this->configuration['negate'] = $form_state->getValue('negate'); Chris@0: if ($form_state->hasValue('context_mapping')) { Chris@0: $this->setContextMapping($form_state->getValue('context_mapping')); Chris@0: } Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function execute() { Chris@0: return $this->executableManager->execute($this); Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getConfiguration() { Chris@0: return [ Chris@0: 'id' => $this->getPluginId(), Chris@0: ] + $this->configuration; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function setConfiguration(array $configuration) { Chris@0: $this->configuration = $configuration + $this->defaultConfiguration(); Chris@0: return $this; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function defaultConfiguration() { Chris@0: return [ Chris@0: 'negate' => FALSE, Chris@0: ]; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function calculateDependencies() { Chris@0: return []; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function setExecutableManager(ExecutableManagerInterface $executableManager) { Chris@0: $this->executableManager = $executableManager; Chris@0: return $this; Chris@0: } Chris@0: Chris@0: }