Skip to content

Commit 8988d3c

Browse files
committed
add inline completion support of abap language (.abap/.adcs extensions)
1 parent 1d79d77 commit 8988d3c

File tree

5 files changed

+64
-1
lines changed

5 files changed

+64
-1
lines changed

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/language/CodeWhispererLanguageManager.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import com.intellij.openapi.components.Service
77
import com.intellij.openapi.components.service
88
import com.intellij.openapi.vfs.VirtualFile
99
import com.intellij.psi.PsiFile
10+
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererAbap
1011
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererC
1112
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererCpp
1213
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererCsharp
@@ -147,6 +148,7 @@ class CodeWhispererLanguageManager {
147148
listOf("vue") to CodeWhispererVue.INSTANCE,
148149
listOf("ps1", "psm1") to CodeWhispererPowershell.INSTANCE,
149150
listOf("r") to CodeWhispererR.INSTANCE,
151+
listOf("abap", "adcs") to CodeWhispererAbap.INSTANCE,
150152
).map {
151153
val exts = it.first
152154
val lang = it.second
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package software.aws.toolkits.jetbrains.services.codewhisperer.language.languages
5+
6+
import software.aws.toolkits.jetbrains.services.codewhisperer.language.CodeWhispererProgrammingLanguage
7+
import software.aws.toolkits.telemetry.CodewhispererLanguage
8+
9+
class CodeWhispererAbap private constructor() : CodeWhispererProgrammingLanguage() {
10+
override val languageId: String = ID
11+
12+
override fun toTelemetryType(): CodewhispererLanguage = CodewhispererLanguage.Abap
13+
14+
override fun isCodeCompletionSupported(): Boolean = true
15+
16+
companion object {
17+
const val ID = "abap"
18+
19+
val INSTANCE = CodeWhispererAbap()
20+
}
21+
}

plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/language/languages/CodeWhispererR.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ class CodeWhispererR private constructor() : CodeWhispererProgrammingLanguage()
1414
override fun isCodeCompletionSupported(): Boolean = true
1515

1616
companion object {
17-
// TODO: confirm with service team language id
1817
const val ID = "r"
1918

2019
val INSTANCE = CodeWhispererR()

plugins/amazonq/codewhisperer/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererLanguageManagerTest.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import org.mockito.kotlin.doReturn
1616
import org.mockito.kotlin.mock
1717
import software.aws.toolkits.jetbrains.services.codewhisperer.language.CodeWhispererLanguageManager
1818
import software.aws.toolkits.jetbrains.services.codewhisperer.language.CodeWhispererProgrammingLanguage
19+
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererAbap
1920
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererC
2021
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererCpp
2122
import software.aws.toolkits.jetbrains.services.codewhisperer.language.languages.CodeWhispererCsharp
@@ -136,6 +137,7 @@ class CodeWhispererLanguageManagerTest {
136137
testGetProgrammingLanguageUtil<CodeWhispererSwift>(listOf("foo"), listOf("swift"))
137138
testGetProgrammingLanguageUtil<CodeWhispererSystemVerilog>(listOf("foo"), listOf("sv", "svh", "vh"))
138139
testGetProgrammingLanguageUtil<CodeWhispererVue>(listOf("foo"), listOf("vue"))
140+
testGetProgrammingLanguageUtil<CodeWhispererAbap>(listOf("foo"), listOf("abap", "adcs"))
139141
}
140142

141143
@Test

plugins/core/jetbrains-community/resources/telemetryOverride.json

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,44 @@
11
{
22
"types": [
3+
{
4+
"name": "codewhispererLanguage",
5+
"type": "string",
6+
"description": "Programming language of the CodeWhisperer recommendation",
7+
"allowedValues": [
8+
"abap",
9+
"c",
10+
"cpp",
11+
"csharp",
12+
"dart",
13+
"go",
14+
"hcl",
15+
"java",
16+
"javascript",
17+
"json",
18+
"jsonc",
19+
"jsx",
20+
"kotlin",
21+
"lua",
22+
"php",
23+
"plaintext",
24+
"powershell",
25+
"python",
26+
"r",
27+
"ruby",
28+
"rust",
29+
"scala",
30+
"shell",
31+
"sql",
32+
"swift",
33+
"systemVerilog",
34+
"tf",
35+
"tsx",
36+
"typescript",
37+
"vue",
38+
"yaml",
39+
"yml"
40+
]
41+
},
342
{
443
"name": "amazonQProfileRegion",
544
"type": "string",

0 commit comments

Comments
 (0)