external_entity-1.0.x-dev/src/Contracts/ExternalEntityStorageInterface.php

src/Contracts/ExternalEntityStorageInterface.php
<?php

declare(strict_types=1);

namespace Drupal\external_entity\Contracts;

use Drupal\Core\Entity\Query\QueryInterface;
use Drupal\external_entity\Definition\ExternalEntityDefaultDefinition;

/**
 * Define the external entity storage interface.
 */
interface ExternalEntityStorageInterface {

  /**
   * Get the resource query service.
   *
   * @param string $resource
   *   The external entity resource.
   * @param string $entity_type_id
   *   The external entity type identifier.
   * @param string $conjunction
   *   The query conjunction.
   *
   * @return \Drupal\Core\Entity\Query\QueryInterface
   *   The external resource query instance.
   */
  public function getResourceQuery(
    string $resource,
    string $entity_type_id,
    string $conjunction,
  ): QueryInterface;

  /**
   * Create an external entity from definition.
   *
   * @param string $external_entity_type
   *   The external entity type ID.
   * @param \Drupal\external_entity\Definition\ExternalEntityDefaultDefinition $definition
   *   The eternal entity definition.
   *
   * @return \Drupal\external_entity\Contracts\ExternalEntityInterface
   */
  public function createEntityFromDefinition(
    string $external_entity_type,
    ExternalEntityDefaultDefinition $definition,
  ): ExternalEntityInterface;

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc