Skip to content

Commit feb64ac

Browse files
author
Jiatong Li
committed
feat(amazonq): make server-side context checkbox only visible for internal users
1 parent bccc41c commit feb64ac

File tree

1 file changed

+11
-1
lines changed
  • plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/settings

1 file changed

+11
-1
lines changed

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/settings/CodeWhispererConfigurable.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,12 @@ import com.intellij.util.concurrency.EdtExecutorService
2525
import com.intellij.util.execution.ParametersListUtil
2626
import kotlinx.coroutines.launch
2727
import org.eclipse.lsp4j.DidChangeConfigurationParams
28+
import software.aws.toolkits.jetbrains.core.credentials.AwsBearerTokenConnection
2829
import software.aws.toolkits.jetbrains.core.credentials.ToolkitConnection
30+
import software.aws.toolkits.jetbrains.core.credentials.ToolkitConnectionManager
2931
import software.aws.toolkits.jetbrains.core.credentials.ToolkitConnectionManagerListener
32+
import software.aws.toolkits.jetbrains.core.credentials.pinning.QConnection
33+
import software.aws.toolkits.jetbrains.core.credentials.sono.isInternalUser
3034
import software.aws.toolkits.jetbrains.services.amazonq.lsp.AmazonQLspService
3135
import software.aws.toolkits.jetbrains.services.codewhisperer.credentials.CodeWhispererLoginType
3236
import software.aws.toolkits.jetbrains.services.codewhisperer.explorer.CodeWhispererExplorerActionManager
@@ -47,6 +51,12 @@ class CodeWhispererConfigurable(private val project: Project) :
4751
private val isSso: Boolean
4852
get() = CodeWhispererExplorerActionManager.getInstance().checkActiveCodeWhispererConnectionType(project) == CodeWhispererLoginType.SSO
4953

54+
private val isInternalUser: Boolean
55+
get() {
56+
val conn = ToolkitConnectionManager.getInstance(project).activeConnectionForFeature(QConnection.getInstance()) as? AwsBearerTokenConnection
57+
return conn?.let { isInternalUser(it.startUrl) } ?: false
58+
}
59+
5060
override fun getId() = "aws.codewhisperer"
5161

5262
override fun createPanel() = panel {
@@ -137,7 +147,7 @@ class CodeWhispererConfigurable(private val project: Project) :
137147
enabled(invoke)
138148
bindSelected(codeWhispererSettings::isWorkspaceContextEnabled, codeWhispererSettings::toggleWorkspaceContextEnabled)
139149
}.comment(message("aws.settings.codewhisperer.workspace_context.tooltip"))
140-
}
150+
}.visible(isInternalUser)
141151
}
142152

143153
group(message("aws.settings.codewhisperer.group.inline_suggestions")) {

0 commit comments

Comments
 (0)