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