Skip to content

Commit 3dd0057

Browse files
committed
Proxy settings
1 parent 9e0506c commit 3dd0057

File tree

4 files changed

+14
-14
lines changed

4 files changed

+14
-14
lines changed

components/ide/jetbrains/toolbox/src/main/kotlin/io/gitpod/toolbox/gateway/GitpodSSHEnvironmentContentsView.kt

-5
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,10 @@ class GitpodSSHEnvironmentContentsView(
2626
private val logger = LoggerFactory.getLogger(javaClass)
2727

2828
override fun getConnectionInfo(): CompletableFuture<SshConnectionInfo> {
29-
// stateListeners.forEach {
30-
// }
3129
return Utils.coroutineScope.future {
3230
val provider = GitpodConnectionProvider(authManager, workspaceId, publicApi)
33-
logger.info("==================connect $workspaceId")
3431
val (connInfo, cancel) = provider.connect()
3532
this@GitpodSSHEnvironmentContentsView.cancel = cancel
36-
logger.info("==================connect info $connInfo")
3733
return@future connInfo
3834
}
3935
}
@@ -47,7 +43,6 @@ class GitpodSSHEnvironmentContentsView(
4743
}
4844

4945
override fun close() {
50-
logger.info("==================close $workspaceId")
5146
cancel()
5247
}
5348
}

components/ide/jetbrains/toolbox/src/main/kotlin/io/gitpod/toolbox/service/GitpodConnectionProvider.kt

+1-8
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import com.jetbrains.toolbox.gateway.ssh.SshConnectionInfo
1010
import io.gitpod.publicapi.v1.WorkspaceOuterClass
1111
import io.gitpod.toolbox.auth.GitpodAuthManager
1212
import kotlinx.serialization.Serializable
13-
import java.net.Proxy
1413

1514
class GitpodConnectionProvider(
1615
private val authManager: GitpodAuthManager,
@@ -56,14 +55,8 @@ class GitpodConnectionProvider(
5655
}
5756

5857
val workspaceHost = URI.create(workspace.status.workspaceUrl).host
59-
60-
// TODO: Check if proxy works
61-
val proxyList = mutableListOf<Proxy>()
62-
if (Utils.httpClient.proxy != null && Utils.httpClient.proxy != Proxy.NO_PROXY) {
63-
proxyList.add(Utils.httpClient.proxy!!)
64-
}
6558
val server =
66-
GitpodWebSocketTunnelServer("wss://${workspaceHost}/_supervisor/tunnel/ssh", ownerToken, proxyList)
59+
GitpodWebSocketTunnelServer("wss://${workspaceHost}/_supervisor/tunnel/ssh", ownerToken)
6760

6861
val cancelServer = server.start()
6962

components/ide/jetbrains/toolbox/src/main/kotlin/io/gitpod/toolbox/service/GitpodWebSocketTunnelServer.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import javax.websocket.MessageHandler.Partial
2525
class GitpodWebSocketTunnelServer(
2626
private val url: String,
2727
private val ownerToken: String,
28-
private val proxies: List<Proxy>,
2928
) {
3029
private val serverSocket = ServerSocket(0) // pass 0 to have the system choose a free port
3130
private val logger = LoggerFactory.getLogger(javaClass)
@@ -107,6 +106,7 @@ class GitpodWebSocketTunnelServer(
107106
val ssl: SslContextFactory = SslContextFactory.Client()
108107
ssl.sslContext = SSLContext.getDefault()
109108
val httpClient = HttpClient(ssl)
109+
val proxies = Utils.getProxyList()
110110
for (proxy in proxies) {
111111
if (proxy.type() == Proxy.Type.DIRECT) {
112112
continue

components/ide/jetbrains/toolbox/src/main/kotlin/io/gitpod/toolbox/service/Utils.kt

+12
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,13 @@ package io.gitpod.toolbox.service
77
import com.jetbrains.toolbox.gateway.PluginSettingsStore
88
import com.jetbrains.toolbox.gateway.ToolboxServiceLocator
99
import com.jetbrains.toolbox.gateway.connection.ClientHelper
10+
import com.jetbrains.toolbox.gateway.connection.ToolboxProxySettings
1011
import com.jetbrains.toolbox.gateway.ssh.validation.SshConnectionValidator
1112
import com.jetbrains.toolbox.gateway.ui.ObservablePropertiesFactory
1213
import com.jetbrains.toolbox.gateway.ui.ToolboxUi
1314
import kotlinx.coroutines.CoroutineScope
1415
import okhttp3.OkHttpClient
16+
import java.net.Proxy
1517
import java.util.concurrent.atomic.AtomicBoolean
1618

1719
object Utils {
@@ -22,6 +24,7 @@ object Utils {
2224
lateinit var httpClient: OkHttpClient private set
2325
lateinit var clientHelper: ClientHelper private set
2426
lateinit var observablePropertiesFactory: ObservablePropertiesFactory private set
27+
lateinit var proxySettings: ToolboxProxySettings private set
2528

2629
lateinit var dataManager: DataManager private set
2730

@@ -40,12 +43,21 @@ object Utils {
4043
httpClient = serviceLocator.getService(OkHttpClient::class.java)
4144
clientHelper = serviceLocator.getService(ClientHelper::class.java)
4245
observablePropertiesFactory = serviceLocator.getService(ObservablePropertiesFactory::class.java)
46+
proxySettings = serviceLocator.getService(ToolboxProxySettings::class.java)
4347
dataManager = DataManager()
4448
}
4549

4650
fun openUrl(url: String) {
4751
toolboxUi.openUrl(url)
4852
}
4953

54+
fun getProxyList(): List<Proxy> {
55+
val proxyList = mutableListOf<Proxy>()
56+
if (proxySettings.proxy != null && proxySettings.proxy != Proxy.NO_PROXY) {
57+
proxyList.add(proxySettings.proxy!!)
58+
}
59+
return proxyList
60+
}
61+
5062
private val isInitialized = AtomicBoolean(false)
5163
}

0 commit comments

Comments
 (0)