Commit cd9ba82d authored by Luhur Abdi Rizal's avatar Luhur Abdi Rizal
Browse files

Issue #3264078 by el7cosmos: Move entity hook events constant to a class

parent e409f8db
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@

namespace Drupal\hook_event_dispatcher;

use Drupal\core_event_dispatcher\EntityHookEvents;
use Drupal\core_event_dispatcher\Event\Entity\EntityDeleteEvent;
use Drupal\core_event_dispatcher\Event\Entity\EntityInsertEvent;
use Drupal\core_event_dispatcher\Event\Entity\EntityPredeleteEvent;
@@ -107,12 +108,12 @@ class ExampleEntityEventSubscribers implements EventSubscriberInterface {
   */
  public static function getSubscribedEvents(): array {
    return [
      HookEventDispatcherInterface::ENTITY_VIEW => 'alterEntityView',
      HookEventDispatcherInterface::ENTITY_PRE_SAVE => 'entityPreSave',
      HookEventDispatcherInterface::ENTITY_INSERT => 'entityInsert',
      HookEventDispatcherInterface::ENTITY_UPDATE => 'entityUpdate',
      HookEventDispatcherInterface::ENTITY_PRE_DELETE => 'entityPreDelete',
      HookEventDispatcherInterface::ENTITY_DELETE => 'entityDelete',
      EntityHookEvents::ENTITY_VIEW => 'alterEntityView',
      EntityHookEvents::ENTITY_PRE_SAVE => 'entityPreSave',
      EntityHookEvents::ENTITY_INSERT => 'entityInsert',
      EntityHookEvents::ENTITY_UPDATE => 'entityUpdate',
      EntityHookEvents::ENTITY_PRE_DELETE => 'entityPreDelete',
      EntityHookEvents::ENTITY_DELETE => 'entityDelete',
    ];
  }

+3 −2
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@

namespace Drupal\hook_event_dispatcher;

use Drupal\core_event_dispatcher\EntityHookEvents;
use Drupal\core_event_dispatcher\Event\Entity\EntityExtraFieldInfoAlterEvent;
use Drupal\core_event_dispatcher\Event\Entity\EntityExtraFieldInfoEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
@@ -60,8 +61,8 @@ class ExampleEntityExtraFieldInfoSubscribers implements EventSubscriberInterface
   */
  public static function getSubscribedEvents(): array {
    return [
      HookEventDispatcherInterface::ENTITY_EXTRA_FIELD_INFO => 'fieldInfo',
      HookEventDispatcherInterface::ENTITY_EXTRA_FIELD_INFO_ALTER => 'fieldInfoAlter',
      EntityHookEvents::ENTITY_EXTRA_FIELD_INFO => 'fieldInfo',
      EntityHookEvents::ENTITY_EXTRA_FIELD_INFO_ALTER => 'fieldInfoAlter',
    ];
  }

+324 −0
Original line number Diff line number Diff line
<?php

namespace Drupal\core_event_dispatcher;

use Drupal\hook_event_dispatcher\HookEventDispatcherInterface;

/**
 * Defines events for entity hooks.
 */
final class EntityHookEvents {

  /**
   * Control entity operation access.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityAccessEvent
   * @see core_event_dispatcher_entity_access()
   * @see hook_entity_access()
   *
   * @var string
   */
  public const ENTITY_ACCESS = HookEventDispatcherInterface::PREFIX . 'entity.access';

  /**
   * Control entity create access.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityCreateAccessEvent
   * @see core_event_dispatcher_entity_create_access()
   * @see hook_entity_create_access()
   *
   * @var string
   */
  public const ENTITY_CREATE_ACCESS = HookEventDispatcherInterface::PREFIX . 'entity.create_access';

  /**
   * Add to entity type definitions..
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityTypeBuildEvent
   * @see core_event_dispatcher_entity_type_build()
   * @see hook_entity_type_build()
   *
   * @var string
   */
  public const ENTITY_TYPE_BUILD = HookEventDispatcherInterface::PREFIX . 'entity_type.build';

  /**
   * Add to entity type definitions..
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityTypeAlterEvent
   * @see core_event_dispatcher_entity_type_alter()
   * @see hook_entity_type_alter()
   *
   * @var string
   */
  public const ENTITY_TYPE_ALTER = HookEventDispatcherInterface::PREFIX . 'entity_type.alter';

  /**
   * Acts when creating a new entity.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityCreateEvent
   * @see core_event_dispatcher_entity_create()
   * @see hook_entity_create()
   *
   * @var string
   */
  public const ENTITY_CREATE = HookEventDispatcherInterface::PREFIX . 'entity.create';

  /**
   * Act on entities when loaded.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityLoadEvent
   * @see core_event_dispatcher_entity_load()
   * @see hook_entity_load()
   *
   * @var string
   */
  public const ENTITY_LOAD = HookEventDispatcherInterface::PREFIX . 'entity.load';

  /**
   * Act on an entity before it is created or updated.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityPresaveEvent
   * @see core_event_dispatcher_entity_presave()
   * @see hook_entity_presave()
   *
   * @var string
   */
  public const ENTITY_PRE_SAVE = HookEventDispatcherInterface::PREFIX . 'entity.presave';

  /**
   * Respond to creation of a new entity.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityInsertEvent
   * @see core_event_dispatcher_entity_insert()
   * @see hook_entity_insert()
   *
   * @var string
   */
  public const ENTITY_INSERT = HookEventDispatcherInterface::PREFIX . 'entity.insert';

  /**
   * Respond to updates to an entity.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityUpdateEvent
   * @see core_event_dispatcher_entity_update()
   * @see hook_entity_update()
   *
   * @var string
   */
  public const ENTITY_UPDATE = HookEventDispatcherInterface::PREFIX . 'entity.update';

  /**
   * Respond to creation of a new entity translation.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityTranslationInsertEvent
   * @see core_event_dispatcher_entity_translation_insert()
   * @see hook_entity_translation_insert()
   *
   * @var string
   */
  public const ENTITY_TRANSLATION_INSERT = HookEventDispatcherInterface::PREFIX . 'entity.translation_insert';

  /**
   * Respond to deletion of a new entity translation.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityTranslationDeleteEvent
   * @see core_event_dispatcher_entity_translation_delete()
   * @see hook_entity_translation_delete()
   *
   * @var string
   */
  public const ENTITY_TRANSLATION_DELETE = HookEventDispatcherInterface::PREFIX . 'entity.translation_delete';

  /**
   * Act before entity deletion.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityPredeleteEvent
   * @see core_event_dispatcher_entity_predelete()
   * @see hook_entity_predelete()
   *
   * @var string
   */
  public const ENTITY_PRE_DELETE = HookEventDispatcherInterface::PREFIX . 'entity.predelete';

  /**
   * Respond to entity deletion.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityDeleteEvent
   * @see core_event_dispatcher_entity_delete()
   * @see hook_entity_delete()
   *
   * @var string
   */
  public const ENTITY_DELETE = HookEventDispatcherInterface::PREFIX . 'entity.delete';

  /**
   * Act on entities being assembled before rendering.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityViewEvent
   * @see core_event_dispatcher_entity_view()
   * @see hook_entity_view()
   *
   * @var string
   */
  public const ENTITY_VIEW = HookEventDispatcherInterface::PREFIX . 'entity.view';

  /**
   * Alter a entity being assembled right before rendering.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityViewAlterEvent
   * @see core_event_dispatcher_entity_view_alter()
   * @see hook_entity_view_alter()
   *
   * @var string
   */
  public const ENTITY_VIEW_ALTER = HookEventDispatcherInterface::PREFIX . 'entity.view_alter';

  /**
   * Alter entity renderable values before cache checking in drupal_render().
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityBuildDefaultsAlterEvent
   * @see core_event_dispatcher_entity_build_defaults_alter()
   * @see hook_entity_build_defaults_alter()
   *
   * @var string
   */
  public const ENTITY_BUILD_DEFAULTS_ALTER = HookEventDispatcherInterface::PREFIX . 'entity.build_defaults_alter';

  /**
   * Provides custom base field definitions for a content entity type.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityBaseFieldInfoEvent
   * @see core_event_dispatcher_entity_base_field_info()
   * @see hook_entity_base_field_info()
   *
   * @var string
   */
  public const ENTITY_BASE_FIELD_INFO = HookEventDispatcherInterface::PREFIX . 'entity_base.field_info';

  /**
   * Alter base field definitions for a content entity type.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityBaseFieldInfoAlterEvent
   * @see core_event_dispatcher_entity_base_field_info_alter()
   * @see hook_entity_base_field_info_alter()
   *
   * @var string
   */
  public const ENTITY_BASE_FIELD_INFO_ALTER = HookEventDispatcherInterface::PREFIX . 'entity_base.field_info_alter';

  /**
   * Alter bundle field definitions.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityBundleFieldInfoAlterEvent
   * @see core_event_dispatcher_entity_bundle_field_info_alter()
   * @see hook_entity_bundle_field_info_alter()
   *
   * @var string
   */
  public const ENTITY_BUNDLE_FIELD_INFO_ALTER = HookEventDispatcherInterface::PREFIX . 'entity_bundle.field_info_alter';

  /**
   * Entity operation.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityOperationEvent
   * @see core_event_dispatcher_entity_operation()
   * @see hook_entity_operation()
   *
   * @var string
   */
  public const ENTITY_OPERATION = HookEventDispatcherInterface::PREFIX . 'entity.operation';

  /**
   * Entity operation alter.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityOperationAlterEvent
   * @see core_event_dispatcher_entity_operation_alter()
   * @see hook_entity_operation_alter()
   *
   * @var string
   */
  public const ENTITY_OPERATION_ALTER = HookEventDispatcherInterface::PREFIX . 'entity.operation_alter';

  /**
   * Control access to fields.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityFieldAccessEvent
   * @see core_event_dispatcher_entity_field_access()
   * @see hook_entity_field_access()
   *
   * @var string
   */
  public const ENTITY_FIELD_ACCESS = HookEventDispatcherInterface::PREFIX . 'entity_field.access';

  /**
   * Exposes "pseudo-field" components on content entities.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityExtraFieldInfoEvent
   * @see core_event_dispatcher_entity_extra_field_info()
   * @see hook_entity_extra_field_info()
   *
   * @var string
   */
  public const ENTITY_EXTRA_FIELD_INFO = HookEventDispatcherInterface::PREFIX . 'entity_extra_field.info';

  /**
   * Alter "pseudo-field" components on content entities.
   *
   * @Event
   *
   * @see \Drupal\core_event_dispatcher\Event\Entity\EntityExtraFieldInfoAlterEvent
   * @see core_event_dispatcher_entity_extra_field_info_alter()
   * @see hook_entity_extra_field_info_alter()
   *
   * @var string
   */
  public const ENTITY_EXTRA_FIELD_INFO_ALTER = HookEventDispatcherInterface::PREFIX . 'entity_extra_field.info_alter';

}
+2 −2
Original line number Diff line number Diff line
@@ -5,9 +5,9 @@ namespace Drupal\core_event_dispatcher\Event\Entity;
use Drupal\Core\Access\AccessResultNeutral;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Session\AccountInterface;
use Drupal\core_event_dispatcher\EntityHookEvents;
use Drupal\hook_event_dispatcher\Event\AccessEventInterface;
use Drupal\hook_event_dispatcher\Event\AccessEventTrait;
use Drupal\hook_event_dispatcher\HookEventDispatcherInterface;

/**
 * Class EntityAccessEvent.
@@ -38,7 +38,7 @@ class EntityAccessEvent extends AbstractEntityEvent implements AccessEventInterf
   * {@inheritdoc}
   */
  public function getDispatcherType(): string {
    return HookEventDispatcherInterface::ENTITY_ACCESS;
    return EntityHookEvents::ENTITY_ACCESS;
  }

}
+4 −3
Original line number Diff line number Diff line
@@ -2,10 +2,10 @@

namespace Drupal\core_event_dispatcher\Event\Entity;

use Drupal\Component\EventDispatcher\Event;
use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\core_event_dispatcher\EntityHookEvents;
use Drupal\hook_event_dispatcher\Event\EventInterface;
use Drupal\hook_event_dispatcher\HookEventDispatcherInterface;
use Drupal\Component\EventDispatcher\Event;

/**
 * Class EntityBaseFieldInfoAlterEvent.
@@ -18,6 +18,7 @@ class EntityBaseFieldInfoAlterEvent extends Event implements EventInterface {
   * @var array
   */
  private $fields;

  /**
   * The entity type.
   *
@@ -42,7 +43,7 @@ class EntityBaseFieldInfoAlterEvent extends Event implements EventInterface {
   * {@inheritdoc}
   */
  public function getDispatcherType(): string {
    return HookEventDispatcherInterface::ENTITY_BASE_FIELD_INFO_ALTER;
    return EntityHookEvents::ENTITY_BASE_FIELD_INFO_ALTER;
  }

  /**
Loading