authenticatorSubscriber = $authenticatorSubscriber; $this->cookieJar = $cookieJar; $this->restrictedAccess = $restrictedAccess; $this->logger = $logger; } /** * @return \GuzzleHttp\Client|null */ public function buildHttpClient() { $this->logger->log('debug', 'Restricted access config enabled?', array('enabled' => (int) $this->restrictedAccess)); if (0 === (int) $this->restrictedAccess) { return; } // we clear the cookie to avoid websites who use cookies for analytics $this->cookieJar->clear(); // need to set the (shared) cookie jar $client = new Client(['handler' => new SafeCurlHandler(), 'defaults' => ['cookies' => $this->cookieJar]]); $client->getEmitter()->attach($this->authenticatorSubscriber); return $client; } }