public static $statics = array();
/**
- * EXPERIMENTAL. Retrieve a named cache instance.
- *
- * This interface is flagged as experimental due to political
- * ambiguity in PHP community -- PHP-FIG has an open but
- * somewhat controversial draft standard for caching. Based on
- * the current draft, it's expected that this function could
- * simultaneously support both CRM_Utils_Cache_Interface and
- * PSR-6, but that depends on whether PSR-6 changes any more.
+ * Retrieve a named cache instance.
*
* @param string $name
* The name of the cache. The 'default' cache is biased toward
* high-performance caches (eg memcache/redis/apc) when
* available and falls back to single-request (static) caching.
* @return CRM_Utils_Cache_Interface
+ * NOTE: Beginning in CiviCRM v5.4, the cache instance complies with
+ * PSR-16 (\Psr\SimpleCache\CacheInterface).
*/
public static function cache($name = 'default') {
return \Civi\Core\Container::singleton()->get('cache.' . $name);
return Civi\Core\Container::singleton();
}
+ /**
+ * Get the event dispatcher.
+ *
+ * @return \Symfony\Component\EventDispatcher\EventDispatcherInterface
+ */
+ public static function dispatcher() {
+ return Civi\Core\Container::singleton()->get('dispatcher');
+ }
+
/**
* @return \Civi\Core\Lock\LockManager
*/