/** * @dataProvider botCrawlerTranscoderUserAgentsProvider */ public function testShouldHandleKnownBots($userAgent) { WURFL_Handlers_Utils::reset(); $normalizer = new WURFL_Request_UserAgentNormalizer_Null(); $context = new WURFL_Context(null); $handler = new WURFL_Handlers_BotCrawlerTranscoderHandler($context, $normalizer); $found = $handler->canHandle($userAgent); $this->assertTrue($found); }
/** * Return a device the given WURFL_Request_GenericRequest request(user-agent..) * * @param WURFL_Request_GenericRequest $request * @return WURFL_CustomDevice device * @throws Exception if the $request parameter is not set */ public function getDeviceForRequest(WURFL_Request_GenericRequest $request) { if (!isset($request)) { throw new Exception("The request parameter must be set."); } WURFL_Handlers_Utils::reset(); return $this->_wurflService->getDeviceForRequest($request); }
/** * Return a device the given WURFL_Request_GenericRequest request(user-agent..) * * @param WURFL_Request_GenericRequest $request * @return WURFL_CustomDevice device * @throws Exception if the $request parameter is not set */ public function getDeviceForRequest(WURFL_Request_GenericRequest $request) { if (!isset($request)) { throw new Exception("The request parameter must be set."); } WURFL_Handlers_Utils::reset(); if (WURFL_Configuration_ConfigHolder::getWURFLConfig()->isHighPerformance() && WURFL_Handlers_Utils::isDesktopBrowserHeavyDutyAnalysis($request->userAgent)) { // This device has been identified as a web browser programatically, so no call to WURFL is necessary return $this->_wurflService->getDevice(WURFL_Constants::GENERIC_WEB_BROWSER); } return $this->_wurflService->getDeviceForRequest($request); }
/** * Return the the device id for the request * * @param WURFL_Request_GenericRequest $request * @return String deviceID */ public function match(WURFL_Request_GenericRequest $request) { WURFL_Handlers_Utils::reset(); return $this->_userAgentHandlers[0]->match($request); }