protected function send($url, $request = null) { $timeout = $this->restHelper->getWebserviceTimeout(); if (is_null($request)) { $request = $this->shipperMapper->getCredentialsTranslation(); } $this->shipperLogger->postDebug('Shipperhq_Shipper', 'Synch: Request to ' . $url, $request->siteDetails); $result = $this->shipperWSClientFactory->create()->sendAndReceive($request, $url, $timeout); return $result; }
/** * Do remote request for and handle errors * * @return Mage_Shipping_Model_Rate_Result */ protected function getQuotes() { $requestString = serialize($this->shipperRequest); $resultSet = $this->carrierCache->getCachedQuotes($requestString, $this->getCarrierCode()); $timeout = $this->restHelper->getWebserviceTimeout(); if (!$resultSet) { $initVal = microtime(true); $resultSet = $this->shipperWSClientFactory->create()->sendAndReceive($this->shipperRequest, $this->restHelper->getRateGatewayUrl(), $timeout); $elapsed = microtime(true) - $initVal; $this->shipperLogger->postDebug('Shipperhq_Shipper', 'Short lapse', $elapsed); if (!$resultSet['result']) { $backupRates = $this->backupCarrier->getBackupCarrierRates($this->rawRequest, $this->getConfigData("backup_carrier")); if ($backupRates) { return $backupRates; } } $this->carrierCache->setCachedQuotes($requestString, $resultSet, $this->getCarrierCode()); } $this->shipperLogger->postInfo('Shipperhq_Shipper', 'Rate request and result', $resultSet['debug']); return $this->parseShipperResponse($resultSet['result']); }