From: Roland Häder Date: Sat, 24 Apr 2010 00:59:27 +0000 (+0000) Subject: Registry rewritten, exception added X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=09446e9ea099531a62c386904dd87b2ddfc33713;p=core.git Registry rewritten, exception added --- diff --git a/.gitattributes b/.gitattributes index 17cd397a..828e9f51 100644 --- a/.gitattributes +++ b/.gitattributes @@ -438,7 +438,6 @@ inc/classes/main/reader/class_DefaultNewsReader.php -text inc/classes/main/registration/.htaccess -text inc/classes/main/registration/class_BaseRegistration.php -text inc/classes/main/registry/.htaccess -text -inc/classes/main/registry/class_Registry.php -text inc/classes/main/request/.htaccess -text inc/classes/main/request/class_ -text inc/classes/main/request/class_BaseRequest.php -text diff --git a/inc/classes/main/registry/class_Registry.php b/inc/classes/main/registry/class_Registry.php deleted file mode 100644 index a31415b3..00000000 --- a/inc/classes/main/registry/class_Registry.php +++ /dev/null @@ -1,116 +0,0 @@ - - * @version 0.0.0 - * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009, 2010 Core Developer Team - * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class Registry extends BaseFrameworkSystem implements Register { - /** - * Instance of this class - */ - private static $registryInstance = null; - - /** - * Instance registry - */ - private $instanceRegistry = array(); - - /** - * Protected constructor - * - * @return void - */ - protected function __construct () { - // Call parent constructor - parent::__construct(__CLASS__); - } - - /** - * Singleton getter for self instance. This class has no factory pattern - * because here is no need for special parameters. - * - * @return $registryInstance Instance of this class - */ - public final static function getRegistry () { - // Is an instance there? - if (is_null(self::$registryInstance)) { - // Not yet, so create one - self::$registryInstance = new Registry(); - } // END - if - - // Return the instance - return self::$registryInstance; - } - - /** - * Checks wether an instance key was found - * - * @param $instanceKey The key holding an instance in registry - * @return $exists Wether the key exists in registry - */ - public function instanceExists ($instanceKey) { - // Does this key exists? - $exists = (isset($this->instanceRegistry[$instanceKey])); - - // Return the result - return $exists; - } - - /** - * Adds/overwrites a new instance to the registry at the given key - * - * @param $instanceKey The key to identify the instance - * @param $objectInstance An instance we shall store - * @return void - */ - public function addInstance ($instanceKey, Registerable $objectInstance) { - $this->instanceRegistry[$instanceKey] = $objectInstance; - } - - /** - * Gets a registered instance or null if not found - * - * @param $instanceKey The key to identify the instance - * @return $objectInstance An instance we shall store - * @throws NullPointerException If the requested key is not found - */ - public function getInstance ($instanceKey) { - // By default the instance is not in registry - $objectInstance = null; - - // Is the instance there? - if ($this->instanceExists($instanceKey)) { - $objectInstance = $this->instanceRegistry[$instanceKey]; - } // END - if - - // Still not fetched? - if (is_null($objectInstance)) { - // This might happen if a non-registered key was requested - throw new NullPointerException($this, self::EXCEPTION_IS_NULL_POINTER); - } // END - if - - // Return the result - return $objectInstance; - } -} - -// [EOF] -?>