You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php /** * @copyright NetMonsters <team@netmonsters.ru> * @link http://netmonsters.ru * @package Majestic * @subpackage Model * @since 2010-02-17 */
class Registry extends ArrayObject { /** * Class name of the singleton registry object. * @var string */ private static $_class_name = 'Registry';
/** * Registry object provides storage for shared objects. * @var Registry */ private static $_registry = null;
/** * Constructs a parent ArrayObject with default * ARRAY_AS_PROPS to allow acces as an object * * @param array $array data array * @param integer $flags ArrayObject flags */ public function __construct($array = array(), $flags = parent::ARRAY_AS_PROPS) { parent::__construct($array, $flags); }
/** * Refuse clone * @codeCoverageIgnoreStart */ private function __clone() { }
/** * @codeCoverageIgnoreEnd */
/** * Retrieves the default registry instance. * * @return Registry */ public static function getInstance() { if (self::$_registry === null) { self::$_registry = new self::$_class_name(); } return self::$_registry; }
static public function get($name, $default = null) { $instance = self::getInstance(); if (!$instance->offsetExists($name)) { return $default; } return $instance->offsetGet($name); }
public static function set($index, $value) { $instance = self::getInstance(); $instance->offsetSet($index, $value); }
public static function isRegistered($index) { if (self::$_registry === null) { return false; } return self::$_registry->offsetExists($index); } }
|