diff --git a/components/gitpod-protocol/java/src/main/java/io/gitpod/gitpodprotocol/api/entities/WorkspaceContext.java b/components/gitpod-protocol/java/src/main/java/io/gitpod/gitpodprotocol/api/entities/WorkspaceContext.java index c677eac117a56d..b098b0bf42590d 100644 --- a/components/gitpod-protocol/java/src/main/java/io/gitpod/gitpodprotocol/api/entities/WorkspaceContext.java +++ b/components/gitpod-protocol/java/src/main/java/io/gitpod/gitpodprotocol/api/entities/WorkspaceContext.java @@ -10,8 +10,8 @@ public class WorkspaceContext { private String normalizedContextURL; private String ref; - public String getNormalizedContextURL() { - return normalizedContextURL; + public Optional getNormalizedContextURL() { + return Optional.ofNullable(normalizedContextURL); } public void setNormalizedContextURL(String normalizedContextURL) { diff --git a/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodConnectionProvider.kt b/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodConnectionProvider.kt index ab969a970da230..e3bd6fb1596050 100644 --- a/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodConnectionProvider.kt +++ b/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodConnectionProvider.kt @@ -124,10 +124,9 @@ class GitpodConnectionProvider : GatewayConnectionProvider { } } row { - browserLink( - workspace.context.normalizedContextURL, - workspace.context.normalizedContextURL - ) + workspace.context.normalizedContextURL.ifPresent { + browserLink(it, it) + } } }.horizontalAlign(HorizontalAlign.CENTER) row { diff --git a/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodWorkspacesView.kt b/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodWorkspacesView.kt index e50b3430fe50ed..61c1e6c5c85dd8 100644 --- a/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodWorkspacesView.kt +++ b/components/ide/jetbrains/gateway-plugin/src/main/kotlin/io/gitpod/jetbrains/gateway/GitpodWorkspacesView.kt @@ -272,9 +272,12 @@ class GitpodWorkspacesView( } ).gap(RightGap.SMALL) panel { - row { + val contextUrlRow = row { browserLink(info.workspace.id, info.latestInstance.ideUrl) - }.rowComment("${info.workspace.context.normalizedContextURL}") + } + info.workspace.context.normalizedContextURL.ifPresent { + contextUrlRow.rowComment("${it}") + } } label("").resizableColumn().horizontalAlign(HorizontalAlign.FILL) panel { @@ -283,11 +286,7 @@ class GitpodWorkspacesView( it.totalUncommitedFiles + it.totalUntrackedFiles + it.totalUnpushedCommits } ?: 0 row { - if (info.workspace.context.ref.isPresent()) { - label(info.workspace.context.ref.get()) - } else { - label("(detached)") - } + info.workspace.context.ref.ifPresentOrElse({ label(it) },{ label("(detached)") }) }.rowComment( when { changes == 1 -> "$changes Change" @@ -345,4 +344,4 @@ class GitpodWorkspacesView( } updateLifetime.onTerminationOrNow { job.cancel() } } -} \ No newline at end of file +}