You are here

public function EntityMatcher::__construct in Linkit 8.5

Same name and namespace in other branches
  1. 8.4 src/Plugin/Linkit/Matcher/EntityMatcher.php \Drupal\linkit\Plugin\Linkit\Matcher\EntityMatcher::__construct()

Constructs a \Drupal\Component\Plugin\PluginBase object.

Parameters

array $configuration: A configuration array containing information about the plugin instance.

string $plugin_id: The plugin_id for the plugin instance.

mixed $plugin_definition: The plugin implementation definition.

Overrides MatcherBase::__construct

File

src/Plugin/Linkit/Matcher/EntityMatcher.php, line 103

Class

EntityMatcher
Provides default linkit matchers for all entity types.

Namespace

Drupal\linkit\Plugin\Linkit\Matcher

Code

public function __construct(array $configuration, $plugin_id, $plugin_definition, Connection $database, EntityTypeManagerInterface $entity_type_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info, EntityRepositoryInterface $entity_repository, ModuleHandlerInterface $module_handler, AccountInterface $current_user, SubstitutionManagerInterface $substitution_manager) {
  parent::__construct($configuration, $plugin_id, $plugin_definition);
  if (empty($plugin_definition['target_entity'])) {
    throw new \InvalidArgumentException("Missing required 'target_entity' property for a matcher.");
  }
  $this->database = $database;
  $this->entityTypeManager = $entity_type_manager;
  $this->entityTypeBundleInfo = $entity_type_bundle_info;
  $this->entityRepository = $entity_repository;
  $this->moduleHandler = $module_handler;
  $this->currentUser = $current_user;
  $this->targetType = $plugin_definition['target_entity'];
  $this->substitutionManager = $substitution_manager;
}