getPluginDefinition(); if ($definition instanceof PluginDefinitionInterface) { $this->addDependency('module', $definition->getProvider()); if ($definition instanceof DependentPluginDefinitionInterface && $config_dependencies = $definition->getConfigDependencies()) { $this->addDependencies($config_dependencies); } } elseif (is_array($definition)) { $this->addDependency('module', $definition['provider']); // Plugins can declare additional dependencies in their definition. if (isset($definition['config_dependencies'])) { $this->addDependencies($definition['config_dependencies']); } } // If a plugin is dependent, calculate its dependencies. if ($instance instanceof DependentPluginInterface && $plugin_dependencies = $instance->calculateDependencies()) { $this->addDependencies($plugin_dependencies); } } }