getAvailableLoader(); foreach($loader as $key => $data) { $data['handler'] = $className; self::$_Options[md5($className.'##'.$key)] = $data; } } } self::$_initialized = true; } public function getAvailableLoader() { $this->_init(); return self::$_Options; } public function getItems($key, $config, VTEntity $context) { $this->_init(); /** * @var $Obj IInventoryLoader */ $obj = new self::$_Options[$key]['handler'](); $items = $obj->getItems($config, $context); return $items; } }