versionDetection = $versionDetection ?: new VersionDetection(); } /** * @param array $config */ public function getClient(array $config = []): ClientInterface { return $this->initClient($config); } /** * @param array $config */ private function initClient(array $config = []): ClientInterface { if ($this->versionDetection->getGuzzleMajorVersionNumber() >= 7) { return Guzzle7Client::createWithConfig( Guzzle7Config::fixConfig($config) ); } return Guzzle5Client::createWithConfig( Guzzle5Config::fixConfig($config) ); } }