setCredentialsProvider(new DefaultCredentialProvider($appSdkConfigProvider)); $defaultAppSdkConfig = $appSdkConfigProvider->getDefaultConfig(); if (!empty($defaultAppSdkConfig->getServerRoot())) { $clientParams->setEndPoint(new Uri($defaultAppSdkConfig->getServerRoot())); } if (!empty($defaultAppSdkConfig->getYosServerRoot())) { $clientParams->setYosEndPoint(new Uri($defaultAppSdkConfig->getYosServerRoot())); } if (!empty($defaultAppSdkConfig->getSandboxServerRoot())) { $clientParams->setSandboxEndPoint(new Uri($defaultAppSdkConfig->getSandboxServerRoot())); } $clientConfigurations = new ClientConfiguration(); if (!empty($defaultAppSdkConfig->getHttpClientConfig())) { $httpClientConfig = $defaultAppSdkConfig->getHttpClientConfig(); $clientConfigurations->setSocketTimeoutInMillis($httpClientConfig['read_timeout']); $clientConfigurations->setConnectionTimeoutInMillis($httpClientConfig['connect_timeout']); } if (!empty($defaultAppSdkConfig->getProxy())) { $proxyConfig = $defaultAppSdkConfig->getProxy(); $parts = [ 'scheme' => $proxyConfig->getScheme(), 'host' => $proxyConfig->getHost(), 'port' => $proxyConfig->getPort(), ]; if (!empty($proxyConfig->getUsername()) && !empty($proxyConfig->getPort())) { $parts['user'] = $proxyConfig->getUsername(); $parts['pass'] = $proxyConfig->getPassword(); } $proxyURI = new Uri($parts); $clientConfigurations->setProxyUrl($proxyURI->__toString()); } $clientParams->setClientConfiguration($clientConfigurations); $modes = []; foreach ($appSdkConfigProvider->getAllConfig() as $appKey => $appKeySdkConfig) { /* @var $appKeySdkConfig AppSdkConfig */ if (!empty($appKeySdkConfig->getMode())) { $modes[$appKey] = $appKeySdkConfig->getMode(); } } $clientParams->setModes($modes); return $clientParams; } }