oxregistry.php

Go to the documentation of this file.
00001 <?php
00002 
00006 class oxRegistry
00007 {
00008 
00014     protected static $_aInstances = array();
00015 
00025     public static function get($sClassName)
00026     {
00027         $sClassName = strtolower($sClassName);
00028         if (isset(self::$_aInstances[$sClassName])) {
00029             return self::$_aInstances[$sClassName];
00030         } else {
00031             self::$_aInstances[$sClassName] = oxNew($sClassName);
00032 
00033             return self::$_aInstances[$sClassName];
00034         }
00035     }
00036 
00047     public static function set($sClassName, $oInstance)
00048     {
00049         $sClassName = strtolower($sClassName);
00050 
00051         if (is_null($oInstance)) {
00052             unset(self::$_aInstances[$sClassName]);
00053 
00054             return;
00055         }
00056 
00057         self::$_aInstances[$sClassName] = $oInstance;
00058     }
00059 
00067     public static function getConfig()
00068     {
00069         return self::get("oxConfig");
00070     }
00071 
00079     public static function getSession()
00080     {
00081         return self::get("oxSession");
00082     }
00083 
00091     public static function getLang()
00092     {
00093         return self::get("oxLang");
00094     }
00095 
00103     public static function getUtils()
00104     {
00105         return self::get("oxUtils");
00106     }
00107 
00113     public static function getKeys()
00114     {
00115         return array_keys(self::$_aInstances);
00116     }
00117 }