![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mets.corals.io/wp-content/plugins/query-monitor/classes/ |
<?php /** * Container for dispatchers. * * @package query-monitor */ /** * @implements \IteratorAggregate<string, QM_Dispatcher> */ class QM_Dispatchers implements IteratorAggregate { /** * @var array<string, QM_Dispatcher> */ private $items = array(); /** * @return ArrayIterator<string, QM_Dispatcher> */ #[\ReturnTypeWillChange] public function getIterator() { return new ArrayIterator( $this->items ); } /** * @param QM_Dispatcher $dispatcher * @return void */ public static function add( QM_Dispatcher $dispatcher ) { $dispatchers = self::init(); $dispatchers->items[ $dispatcher->id ] = $dispatcher; } /** * @param string $id * @return QM_Dispatcher|false */ public static function get( $id ) { $dispatchers = self::init(); if ( isset( $dispatchers->items[ $id ] ) ) { return $dispatchers->items[ $id ]; } return false; } /** * @return void */ public static function cease() { $dispatchers = self::init(); /** @var QM_Dispatcher $dispatcher */ foreach ( $dispatchers as $dispatcher ) { $dispatcher->cease(); } } /** * @return self */ public static function init() { static $instance; if ( ! $instance ) { $instance = new QM_Dispatchers(); } return $instance; } }