You are here

ConfigEntityRevisionsOverviewFormBaseInterface.php in Config Entity Revisions 8.2

File

src/ConfigEntityRevisionsOverviewFormBaseInterface.php
View source
<?php

namespace Drupal\config_entity_revisions;

use Symfony\Component\DependencyInjection\ContainerInterface;
use Drupal\Core\DependencyInjection\ContainerInjectionInterface;
use Drupal\Core\Form\FormInterface;
use Drupal\Core\Config\Entity\ConfigEntityInterface;
use Drupal\Core\Entity\EntityTypeManager;
use Drupal\diff\DiffLayoutManager;
use Drupal\Core\Datetime\DateFormatterInterface;
use Drupal\Core\Render\RendererInterface;
use Drupal\Core\Config\ImmutableConfig;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Extension\ModuleHandler;
use Drupal\Core\Utility\LinkGenerator;

/**
 * Interface ConfigEntityRevisionsOverviewFormBaseInterface.
 *
 * @package Drupal\config_entity_revisions
 *
 * Controller to make library functions available to various consumers.
 */
interface ConfigEntityRevisionsOverviewFormBaseInterface extends FormInterface, ContainerInjectionInterface {

  /**
   * Constructs a ConfigEntityRevisionsController object.
   *
   * @param \Drupal\Core\Datetime\DateFormatterInterface $date_formatter
   *   The date formatter service.
   * @param \Drupal\Core\Render\RendererInterface $renderer
   *   The renderer service.
   * @param \Drupal\Core\Config\ImmutableConfig $config
   *   The configuration service.
   * @param \Drupal\Core\Extension\ModuleHandler $module_handler
   *   The module handler service.
   * @param \Drupal\Core\Entity\EntityTypeManager $entity_type_manager
   *   The entity type manager service.
   * @param \Drupal\diff\DiffLayoutManager $diff_layout_manager
   *   The diff layout manager service.
   * @param \Drupal\Core\Utility\LinkGenerator $link
   *   The Link generator service.
   */
  public function __construct(DateFormatterInterface $date_formatter, RendererInterface $renderer, ImmutableConfig $config, ModuleHandler $module_handler, EntityTypeManager $entity_type_manager, DiffLayoutManager $diff_layout_manager, LinkGenerator $link);

  /**
   * {@inheritdoc}
   */
  public static function create(ContainerInterface $container);

  /**
   * Get the entity type this form handles.
   *
   * @return string
   *   The entity type.
   */
  public function getEntityType();

  /**
   * Get the route parameter that provides the entity instance.
   *
   * @return string
   *   The route parameter name.
   */
  public function getRouteParameterName();

  /**
   * Returns a unique string identifying the form.
   *
   * @return string
   *   The unique string identifying the form.
   */
  public function getFormId();

  /**
   * Generates an overview table of older revisions of a config entity.
   *
   * @param array $form
   *   A form being built.
   * @param \Drupal\Core\Form\FormStateInterface $form_state
   *   The form state.
   * @param \Drupal\Core\Config\Entity\ConfigEntityInterface $config_entity
   *   A configuration entity.
   *
   * @return array
   *   An array as expected by \Drupal\Core\Render\RendererInterface::render().
   */
  public function buildForm(array $form, FormStateInterface $form_state, ConfigEntityInterface $config_entity = NULL);

  /**
   * {@inheritdoc}
   */
  public function validateForm(array &$form, FormStateInterface $form_state);

  /**
   * {@inheritdoc}
   */
  public function submitForm(array &$form, FormStateInterface $form_state);

}

Interfaces

Namesort descending Description
ConfigEntityRevisionsOverviewFormBaseInterface Interface ConfigEntityRevisionsOverviewFormBaseInterface.