PluginManagerInterface.php 1.1 KB

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