-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathPluginManagerInterface.php
29 lines (26 loc) · 1.14 KB
/
PluginManagerInterface.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
namespace Drupal\Component\Plugin;
use Drupal\Component\Plugin\Discovery\DiscoveryInterface;
use Drupal\Component\Plugin\Factory\FactoryInterface;
use Drupal\Component\Plugin\Mapper\MapperInterface;
/**
* Interface implemented by plugin managers.
*
* There are no explicit methods on the manager interface. Instead plugin
* managers broker the interactions of the different plugin components, and
* therefore, must implement each component interface, which is enforced by
* this interface extending all of the component ones.
*
* While a plugin manager may directly implement these interface methods with
* custom logic, it is expected to be more common for plugin managers to proxy
* the method invocations to the respective components, and directly implement
* only the additional functionality needed by the specific pluggable system.
* To follow this pattern, plugin managers can extend from the PluginManagerBase
* class, which contains the proxying logic.
*
* @see \Drupal\Component\Plugin\PluginManagerBase
*
* @ingroup plugin_api
*/
interface PluginManagerInterface extends DiscoveryInterface, FactoryInterface, MapperInterface {
}