Skip to content

Commit 2f754ef

Browse files
committed
feat(harmonyos): improve HarmonyOSChatContextProvider
- Make `logger` private to encapsulate implementation details - Refactor code to use `language` variable for better readability - Update context message for TypeScript and JavaScript languages - Update context message for C and C++ languages
1 parent da4852e commit 2f754ef

File tree

1 file changed

+6
-9
lines changed

1 file changed

+6
-9
lines changed

exts/ext-harmonyos/src/main/kotlin/cc/unitmesh/harmonyos/provider/HarmonyOSChatContextProvider.kt

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import com.intellij.openapi.diagnostic.logger
77
import com.intellij.openapi.project.Project
88

99
class HarmonyOSChatContextProvider : ChatContextProvider {
10-
val logger = logger<HarmonyOSChatContextProvider>()
10+
private val logger = logger<HarmonyOSChatContextProvider>()
1111

1212
override fun isApplicable(project: Project, creationContext: ChatCreationContext): Boolean {
1313
return System.getProperty("idea.platform.prefix", "idea") == "DevEcoStudio"
@@ -16,17 +16,14 @@ class HarmonyOSChatContextProvider : ChatContextProvider {
1616
override suspend fun collect(project: Project, creationContext: ChatCreationContext): List<ChatContextItem> {
1717
var context = "This project is a HarmonyOS project."
1818

19-
val languageName = creationContext.sourceFile?.language?.displayName
19+
val language = creationContext.sourceFile?.language?.displayName
2020

21-
logger.info("context: $context")
21+
logger.info("language: $language")
2222

23-
if (languageName == "TypeScript" || languageName == "JavaScript" || languageName == "ArkTS") {
23+
if (language == "TypeScript" || language == "JavaScript" || language == "ArkTS") {
2424
context += "Which use TypeScript (ArkTS) as the main language, and use Flutter like TypeScript UI framework."
25-
} else {
26-
val className = creationContext.sourceFile?.language?.displayName
27-
if (className == "CPP" || className == "C/C" || className == "CCE") {
28-
context += "Which use C++ as the main language, and NAPI for building native Addons."
29-
}
25+
} else if (language == "C" || language == "C/C++" || language == "CCE") {
26+
context += "Which use C++ as the main language, and NAPI for building native Addons."
3027
}
3128

3229
return listOf(ChatContextItem(HarmonyOSChatContextProvider::class, context))

0 commit comments

Comments
 (0)