farm-2.x-dev/modules/core/data_stream/modules/notification/src/Plugin/DataStream/NotificationDelivery/NotificationDeliveryBase.php
modules/core/data_stream/modules/notification/src/Plugin/DataStream/NotificationDelivery/NotificationDeliveryBase.php
<?php
namespace Drupal\data_stream_notification\Plugin\DataStream\NotificationDelivery;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Plugin\ContextAwarePluginTrait;
use Drupal\Core\Plugin\PluginBase;
/**
* A base class for notification delivery plugins.
*/
abstract class NotificationDeliveryBase extends PluginBase implements NotificationDeliveryInterface {
use ContextAwarePluginTrait;
/**
* {@inheritdoc}
*/
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
return $form;
}
/**
* {@inheritdoc}
*/
public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
}
/**
* {@inheritdoc}
*/
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
}
/**
* {@inheritdoc}
*/
public function getConfiguration() {
return $this->configuration;
}
/**
* {@inheritdoc}
*/
public function setConfiguration(array $configuration) {
$this->configuration = $configuration + $this->defaultConfiguration();
return $this;
}
/**
* {@inheritdoc}
*/
public function defaultConfiguration() {
return [];
}
}
