PluginsProcessor.php 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. /**
  3. * @package Grav\Common\Processors
  4. *
  5. * @copyright Copyright (c) 2015 - 2023 Trilby Media, LLC. All rights reserved.
  6. * @license MIT License; see LICENSE file for details.
  7. */
  8. namespace Grav\Common\Processors;
  9. use Psr\Http\Message\ResponseInterface;
  10. use Psr\Http\Message\ServerRequestInterface;
  11. use Psr\Http\Server\RequestHandlerInterface;
  12. /**
  13. * Class PluginsProcessor
  14. * @package Grav\Common\Processors
  15. */
  16. class PluginsProcessor extends ProcessorBase
  17. {
  18. /** @var string */
  19. public $id = 'plugins';
  20. /** @var string */
  21. public $title = 'Initialize Plugins';
  22. /**
  23. * @param ServerRequestInterface $request
  24. * @param RequestHandlerInterface $handler
  25. * @return ResponseInterface
  26. */
  27. public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
  28. {
  29. $this->startTimer();
  30. $grav = $this->container;
  31. $grav->fireEvent('onPluginsInitialized');
  32. $this->stopTimer();
  33. return $handler->handle($request);
  34. }
  35. }