@@ -24,7 +24,9 @@ import com.coder.toolbox.util.coderTrustManagers
2424import com.coder.toolbox.util.getArch
2525import com.coder.toolbox.util.getHeaders
2626import com.coder.toolbox.util.getOS
27+ import com.jetbrains.toolbox.api.remoteDev.connection.ProxyAuth
2728import com.squareup.moshi.Moshi
29+ import okhttp3.Credentials
2830import okhttp3.OkHttpClient
2931import retrofit2.Response
3032import retrofit2.Retrofit
@@ -78,18 +80,16 @@ open class CoderRestClient(
7880 builder.proxySelector(context.proxySettings.getProxySelector()!! )
7981 }
8082
81- // TODO - add support for proxy auth. when Toolbox exposes them
82- // builder.proxyAuthenticator { _, response ->
83- // if (proxyValues.useAuth && proxyValues.username != null && proxyValues.password != null) {
84- // val credentials = Credentials.basic(proxyValues.username, proxyValues.password)
85- // response.request.newBuilder()
86- // .header("Proxy-Authorization", credentials)
87- // .build()
88- // } else {
89- // null
90- // }
91- // }
92- // }
83+ builder.proxyAuthenticator { _, response ->
84+ val proxyAuth = context.proxySettings.getProxyAuth()
85+ if (proxyAuth == null || proxyAuth !is ProxyAuth .Basic ) {
86+ return @proxyAuthenticator null
87+ }
88+ val credentials = Credentials .basic(proxyAuth.username, proxyAuth.password)
89+ response.request.newBuilder()
90+ .header(" Proxy-Authorization" , credentials)
91+ .build()
92+ }
9393
9494 if (token != null ) {
9595 builder = builder.addInterceptor {
0 commit comments