protected function actionRequest() { $request_factory = new WURFL_Request_GenericRequestFactory(); $request = $request_factory->createRequest($this->http_headers); $device = $this->wurfl->getDeviceForRequest($request); $this->response['id'] = $device->id; $this->response['user_agent'] = $request->userAgent; if (!empty($this->capabilities)) { $this->response['capabilities'] = array(); foreach ($this->capabilities as $capability) { $this->response['capabilities'][$capability] = $device->getCapability($capability); } } if ($this->matcher_history) { $this->response['matcher_history'] = $device->getCapability('matcher_history'); } $this->response['success'] = true; $this->sendResponse(); }
protected function actionRequest() { $request_factory = new WURFL_Request_GenericRequestFactory(); $request = $request_factory->createRequest($this->http_headers); $device = $this->wurfl->getDeviceForRequest($request); $this->response['id'] = $device->id; $this->response['user_agent'] = $request->userAgent; if (!empty($this->capabilities)) { $this->response['capabilities'] = array(); foreach ($this->capabilities as $capability) { if (array_key_exists($capability, WURFL_VirtualCapabilityProvider::$virtual_capabilities)) { $value = $device->getVirtualCapability($capability); } else { $value = $device->getCapability($capability); } $this->response['capabilities'][$capability] = $value; } } if ($this->matcher_history) { $this->response['matcher_history'] = $request->matchInfo->matcher_history; } $this->response['success'] = true; $this->sendResponse(); }
public function run(WURFL_WURFLManager $wurflManager) { $this->failure_count = 0; // Verify API Version if ($this->min_version && version_compare(WURFL_Constants::API_VERSION, $this->min_version, '<')) { throw new CentralTest_InvalidIntrospectorVersionException("Test requires WURFL PHP API >= {$this->min_version} (current " . WURFL_Constants::API_VERSION . ")"); } // Verify correct mode if ($this->mode != self::MODE_ALL) { $required_mode = $this->mode == self::MODE_HIGH_PERFORMANCE ? WURFL_Configuration_Config::MATCH_MODE_PERFORMANCE : WURFL_Configuration_Config::MATCH_MODE_ACCURACY; WURFL_Configuration_ConfigHolder::getWURFLConfig()->matchMode($required_mode); } $request_factory = new WURFL_Request_GenericRequestFactory(); $request = $request_factory->createRequest($this->http_headers, $this->ua_override); $device = $wurflManager->getDeviceForRequest($request); foreach ($this->assertions as $assertion) { /* @var $assertion CentralTestAssertion */ $assertion->wurflManager = $wurflManager; if (!$assertion->assert($device)) { $this->failure_count++; } } return $this->failure_count === 0; }