/** * Create a new WURFL Manager Factory * @param WURFL_Configuration_Config $wurflConfig * @param WURFL_Storage_Base $persistenceStorage * @param WURFL_Storage_Base $cacheStorage */ public function __construct(WURFL_Configuration_Config $wurflConfig, $persistenceStorage = null, $cacheStorage = null) { $this->wurflConfig = $wurflConfig; WURFL_Configuration_ConfigHolder::setWURFLConfig($this->wurflConfig); $this->persistenceStorage = $persistenceStorage ? $persistenceStorage : WURFL_Storage_Factory::create($this->wurflConfig->persistence); $this->cacheStorage = $cacheStorage ? $cacheStorage : WURFL_Storage_Factory::create($this->wurflConfig->cache); if ($this->persistenceStorage->validSecondaryCache($this->cacheStorage)) { $this->persistenceStorage->setCacheStorage($this->cacheStorage); } }
public function reload($wurflConfigurationPath) { $wurflConfig = WURFL_Configuration_ConfigFactory::create($wurflConfigurationPath); WURFL_Configuration_ConfigHolder::setWURFLConfig($wurflConfig); $cacheProvider = WURFL_Cache_CacheProviderFactory::getCacheProvider(); $cacheProvider->clear(); $persistenceProvider = WURFL_Xml_PersistenceProvider_PersistenceProviderManager::getPersistenceProvider(); $persistenceProvider->setWURFLLoaded(FALSE); WURFL_WURFLManagerProvider::getWURFLManager($wurflConfigurationPath); }
/** * Initiaizes the actual WURFLManager * * @param string $configurationFilePath Absolute path to the wurfl configuration file */ private static function _init($configurationFilePath) { $wurflConfig = WURFL_Configuration_ConfigFactory::create($configurationFilePath); WURFL_Configuration_ConfigHolder::setWURFLConfig($wurflConfig); $wurflFileParser = new WURFL_Xml_WURFLFileParser(); $wurflPatchFileParser = new WURFL_Xml_WURFLPatchFileParser(); $wurflPatchManager = new WURFL_Xml_PatchManager(); // Persistence and Cache Providers $persistenceProvider = WURFL_Xml_PersistenceProvider_PersistenceProviderManager::getPersistenceProvider(); $cacheProvider = WURFL_Cache_CacheProviderFactory::getCacheProvider(); $xmlResourceManager = new WURFL_Xml_XMLResourceManager($persistenceProvider, $wurflPatchManager, $wurflFileParser, $wurflPatchFileParser); $userAgentHandlerChain = WURFL_UserAgentHandlerChainFactory::create(); $deviceRepository = new WURFL_DeviceRepository($xmlResourceManager, $userAgentHandlerChain, $persistenceProvider); $wurflService = new WURFL_WURFLService($deviceRepository, $userAgentHandlerChain, $cacheProvider); $userAgentNormalizer = new WURFL_Request_UserAgentNormalizer(); $requestFactory = new WURFL_Request_GenericRequestFactory($userAgentNormalizer); self::$wurflManager = new WURFL_WURFLManager($wurflService, $requestFactory); }