123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- <?php
- namespace Drupal\Core\Entity\EntityReferenceSelection;
- use Drupal\Core\Database\Query\SelectInterface;
- use Drupal\Core\Plugin\PluginFormInterface;
- /**
- * Interface definition for Entity Reference Selection plugins.
- *
- * @see \Drupal\Core\Entity\EntityReferenceSelection\SelectionPluginManager
- * @see \Drupal\Core\Entity\Annotation\EntityReferenceSelection
- * @see plugin_api
- */
- interface SelectionInterface extends PluginFormInterface {
- /**
- * Gets the list of referenceable entities.
- *
- * @return array
- * A nested array of entities, the first level is keyed by the
- * entity bundle, which contains an array of entity labels (escaped),
- * keyed by the entity ID.
- */
- public function getReferenceableEntities($match = NULL, $match_operator = 'CONTAINS', $limit = 0);
- /**
- * Counts entities that are referenceable.
- *
- * @return int
- * The number of referenceable entities.
- */
- public function countReferenceableEntities($match = NULL, $match_operator = 'CONTAINS');
- /**
- * Validates which existing entities can be referenced.
- *
- * @return array
- * An array of valid entity IDs.
- */
- public function validateReferenceableEntities(array $ids);
- /**
- * Allows the selection to alter the SelectQuery generated by EntityFieldQuery.
- *
- * @param \Drupal\Core\Database\Query\SelectInterface $query
- * A Select Query object.
- */
- public function entityQueryAlter(SelectInterface $query);
- }
|