protected function OpenIDConnectClientCollection::initializePlugin in OpenID Connect / OAuth client 2.x
Initializes and stores a plugin.
Parameters
string $instance_id: The ID of the plugin instance to initialize.
Overrides DefaultSingleLazyPluginCollection::initializePlugin
File
- src/
Plugin/ OpenIDConnectClientCollection.php, line 43
Class
- OpenIDConnectClientCollection
- Provides a collection of OpenID Connect client plugins.
Namespace
Drupal\openid_connect\PluginCode
protected function initializePlugin($instance_id) {
if (!$instance_id) {
throw new PluginException("The OpenID Connect client '{$this->clientId}' did not specify a plugin.");
}
try {
parent::initializePlugin($instance_id);
if (isset($this->clientId)) {
/** @var \Drupal\openid_connect\Plugin\OpenIDConnectClientInterface $plugin */
$plugin = $this
->get($instance_id);
$plugin
->setParentEntityId($this->clientId);
}
} catch (PluginException $e) {
$module = $this->configuration['provider'];
// Ignore clients belonging to uninstalled modules, but re-throw valid
// exceptions when the module is installed and the plugin is
// misconfigured.
if (!$module || \Drupal::moduleHandler()
->moduleExists($module)) {
throw $e;
}
}
}