You are here

ConfigEntityRevisionsConfigEntityInterface.php in Config Entity Revisions 8.2

File

src/ConfigEntityRevisionsConfigEntityInterface.php
View source
<?php

namespace Drupal\config_entity_revisions;

use Drupal\Core\Config\Entity\ConfigEntityInterface;
use Drupal\Core\Entity\RevisionableInterface;

/**
 * ConfigEntityRevisionsConfigEntityInterface.
 *
 * Adds revision related fields to a configuration entity.
 */
interface ConfigEntityRevisionsConfigEntityInterface extends ConfigEntityInterface, RevisionableInterface {

  /**
   * The module name.
   *
   * @return string
   *   The name of the module implementing the API.
   */
  public function moduleName();

  /**
   * The config entity name.
   *
   * @return string
   *   The name of the entity being revisioned.
   */
  public function configEntityName();

  /**
   * The name of the content entity storing revisions.
   *
   * @return string
   *   The name of the content entity in which revisions are being stored.
   */
  public function revisionsEntityName();

  /**
   * The bundle name fot content entities.
   *
   * @return string
   *   The bundle name for content entities in which revisions are being stored.
   */
  public function getBundleName();

  /**
   * The name of the config entity field storing content entity ids.
   *
   * @return string
   *   The name of the setting on the config entity in which content entity
   *   ids are stored.
   */
  public function settingName();

  /**
   * The title for the module.
   *
   * @return string
   *   The proper name (displayed to the user) of the module implementing the
   *   API.
   */
  public function title();

  /**
   * Whether the config entity has it's own related content entities.
   *
   * @return bool
   *   Does the config entity have its own content entities?
   */
  public function hasOwnContent();

  /**
   * The content entities (webform_submissions, eg) that the config entity has.
   *
   * @return string
   *   The name of the content entities that the config entity has.
   */
  public function contentEntityType();

  /**
   * The name of the content parameter.
   *
   * @return string
   *   The name of the content parameter.
   */
  public function contentParameterName();

  /**
   * The name of the content entity's parent reference field.
   *
   * @return string
   *   The name of the field in the content entity that references the parent.
   */
  public function contentParentReferenceField();

  /**
   * The name of the admin permission to check.
   *
   * @return string
   *   The name of the module implementing the API.
   */
  public function adminPermission();

  /**
   * Whether the entity has a canonical URL.
   *
   * @return bool
   *   Whether the entity has a canonical URL.
   */
  public function hasCanonicalUrl();

  /**
   * Get the preview form id.
   *
   * @return mixed
   *   The preview form id, if applicable, or NULL.
   */
  public function previewFormId();

  /**
   * Set in the configEntity an identifier for the matching content entity.
   *
   * @param mixed $contentEntityID
   *   The ID used to match the content entity.
   */
  public function setContentEntityId($contentEntityID);

  /**
   * Get from the configEntity the ID of the matching content entity.
   *
   * @return int|null
   *   The ID (if any) of the matching content entity.
   */
  public function getContentEntityId();

  /**
   * Get the revisions entity storage.
   *
   * @return ContentEntityStorageInterface
   *   The storage for the revisions entity.
   *
   * @throws \Drupal\Component\Plugin\Exception\InvalidPluginDefinitionException
   * @throws \Drupal\Component\Plugin\Exception\PluginNotFoundException
   */
  public function contentEntityStorage();

}

Interfaces

Namesort descending Description
ConfigEntityRevisionsConfigEntityInterface ConfigEntityRevisionsConfigEntityInterface.