in plugins/amazonq/codewhisperer/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codewhisperer/credentials/CodeWhispererClientAdaptor.kt [81:255]
fun listAvailableCustomizations(): List<CodeWhispererCustomization>
fun startTestGeneration(uploadId: String, targetCode: List<TargetCode>, userInput: String): StartTestGenerationResponse
fun getTestGeneration(jobId: String, jobGroupName: String): GetTestGenerationResponse
fun sendUserTriggerDecisionTelemetry(
requestContext: RequestContext,
responseContext: ResponseContext,
completionType: CodewhispererCompletionType,
suggestionState: CodewhispererSuggestionState,
suggestionReferenceCount: Int,
lineCount: Int,
numberOfRecommendations: Int,
acceptedCharCount: Int,
): SendTelemetryEventResponse
fun sendUserTriggerDecisionTelemetry(
sessionContext: SessionContextNew,
requestContext: RequestContextNew,
responseContext: ResponseContext,
completionType: CodewhispererCompletionType,
suggestionState: CodewhispererSuggestionState,
suggestionReferenceCount: Int,
lineCount: Int,
numberOfRecommendations: Int,
acceptedCharCount: Int,
): SendTelemetryEventResponse
fun sendCodePercentageTelemetry(
language: CodeWhispererProgrammingLanguage,
customizationArn: String?,
acceptedTokenCount: Long,
totalTokenCount: Long,
unmodifiedAcceptedTokenCount: Long?,
userWrittenCodeCharacterCount: Long?,
userWrittenCodeLineCount: Long?,
): SendTelemetryEventResponse
fun sendUserModificationTelemetry(
sessionId: String,
requestId: String,
language: CodeWhispererProgrammingLanguage,
customizationArn: String?,
acceptedCharacterCount: Int,
unmodifiedAcceptedTokenCount: Int,
): SendTelemetryEventResponse
fun sendCodeScanTelemetry(
language: CodeWhispererProgrammingLanguage,
codeScanJobId: String?,
scope: CodeWhispererConstants.CodeAnalysisScope,
): SendTelemetryEventResponse
fun sendCodeScanSucceededTelemetry(
language: CodeWhispererProgrammingLanguage,
codeScanJobId: String?,
scope: CodeWhispererConstants.CodeAnalysisScope,
findings: Int,
): SendTelemetryEventResponse
fun sendCodeScanFailedTelemetry(
language: CodeWhispererProgrammingLanguage,
codeScanJobId: String?,
scope: CodeWhispererConstants.CodeAnalysisScope,
): SendTelemetryEventResponse
fun sendCodeFixGenerationTelemetry(
language: CodeWhispererProgrammingLanguage,
codeFixJobId: String?,
ruleId: String?,
detectorId: String?,
findingId: String?,
linesOfCodeGenerated: Int?,
charsOfCodeGenerated: Int?,
): SendTelemetryEventResponse
fun sendCodeFixAcceptanceTelemetry(
language: CodeWhispererProgrammingLanguage,
codeFixJobId: String?,
ruleId: String?,
detectorId: String?,
findingId: String?,
linesOfCodeGenerated: Int?,
charsOfCodeGenerated: Int?,
): SendTelemetryEventResponse
fun sendCodeScanRemediationTelemetry(
language: CodeWhispererProgrammingLanguage?,
codeScanRemediationEventType: String?,
detectorId: String?,
findingId: String?,
ruleId: String?,
component: String?,
reason: String?,
result: String?,
includesFix: Boolean?,
): SendTelemetryEventResponse
fun sendTestGenerationEvent(
jobId: String,
groupName: String,
language: CodeWhispererProgrammingLanguage?,
ideCategory: IdeCategory?,
numberOfUnitTestCasesGenerated: Int?,
numberOfUnitTestCasesAccepted: Int?,
linesOfCodeGenerated: Int?,
linesOfCodeAccepted: Int?,
charsOfCodeGenerated: Int?,
charsOfCodeAccepted: Int?,
): SendTelemetryEventResponse
fun listFeatureEvaluations(): ListFeatureEvaluationsResponse
fun sendMetricDataTelemetry(eventName: String, metadata: Map<String, Any?>): SendTelemetryEventResponse
fun sendChatAddMessageTelemetry(
sessionId: String,
requestId: String,
userIntent: UserIntent?,
hasCodeSnippet: Boolean?,
programmingLanguage: String?,
activeEditorTotalCharacters: Int?,
timeToFirstChunkMilliseconds: Double?,
timeBetweenChunks: List<Double>?,
fullResponselatency: Double?,
requestLength: Int?,
responseLength: Int?,
numberOfCodeBlocks: Int?,
hasProjectLevelContext: Boolean?,
customization: CodeWhispererCustomization?,
): SendTelemetryEventResponse
fun sendChatInteractWithMessageTelemetry(
sessionId: String,
requestId: String,
interactionType: ChatMessageInteractionType?,
interactionTarget: String?,
acceptedCharacterCount: Int?,
acceptedSnippetHasReference: Boolean?,
hasProjectLevelContext: Boolean?,
): SendTelemetryEventResponse
fun sendChatInteractWithMessageTelemetry(event: ChatInteractWithMessageEvent): SendTelemetryEventResponse
fun sendChatUserModificationTelemetry(
sessionId: String,
requestId: String,
language: CodeWhispererProgrammingLanguage,
modificationPercentage: Double,
hasProjectLevelContext: Boolean?,
customization: CodeWhispererCustomization?,
): SendTelemetryEventResponse
fun sendInlineChatTelemetry(
requestId: String,
inputLength: Int?,
numSelectedLines: Int?,
codeIntent: Boolean?,
userDecision: InlineChatUserDecision?,
responseStartLatency: Double?,
responseEndLatency: Double?,
numSuggestionAddChars: Int?,
numSuggestionAddLines: Int?,
numSuggestionDelChars: Int?,
numSuggestionDelLines: Int?,
programmingLanguage: String?,
): SendTelemetryEventResponse
companion object {
fun getInstance(project: Project): CodeWhispererClientAdaptor = project.service()
const val INVALID_CODESCANJOBID = "Invalid_CodeScanJobID"
const val INVALID_CODEFIXJOBID = "Invalid_CodeFixJobID"
}