@@ -7,21 +7,16 @@ import com.fasterxml.jackson.databind.DeserializationFeature
7
7
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
8
8
import com.fasterxml.jackson.module.kotlin.readValue
9
9
import com.intellij.openapi.application.ApplicationInfo
10
- import com.intellij.openapi.application.ApplicationManager
11
10
import com.intellij.openapi.application.runInEdt
12
11
import com.intellij.openapi.application.runReadAction
13
12
import com.intellij.openapi.fileEditor.FileDocumentManager
14
13
import com.intellij.openapi.project.Project
15
- import com.intellij.openapi.project.modules
16
- import com.intellij.openapi.roots.ModuleRootManager
17
14
import com.intellij.openapi.vfs.LocalFileSystem
18
15
import kotlinx.coroutines.delay
19
16
import kotlinx.coroutines.ensureActive
20
17
import kotlinx.coroutines.isActive
21
18
import kotlinx.coroutines.time.withTimeout
22
19
import kotlinx.coroutines.withContext
23
- import migration.software.aws.toolkits.jetbrains.settings.AwsSettings
24
- import org.apache.commons.codec.digest.DigestUtils
25
20
import software.amazon.awssdk.services.codewhisperer.model.ArtifactType
26
21
import software.amazon.awssdk.services.codewhisperer.model.CodeScanFindingsSchema
27
22
import software.amazon.awssdk.services.codewhisperer.model.CodeScanStatus
@@ -38,14 +33,12 @@ import software.aws.toolkits.core.utils.Waiters.waitUntil
38
33
import software.aws.toolkits.core.utils.debug
39
34
import software.aws.toolkits.core.utils.getLogger
40
35
import software.aws.toolkits.core.utils.info
41
- import software.aws.toolkits.core.utils.toHexString
42
36
import software.aws.toolkits.jetbrains.services.codewhisperer.codescan.sessionconfig.CodeScanSessionConfig
43
37
import software.aws.toolkits.jetbrains.services.codewhisperer.codescan.sessionconfig.PayloadContext
44
38
import software.aws.toolkits.jetbrains.services.codewhisperer.credentials.CodeWhispererClientAdaptor
45
39
import software.aws.toolkits.jetbrains.services.codewhisperer.explorer.CodeWhispererExplorerActionManager
46
40
import software.aws.toolkits.jetbrains.services.codewhisperer.model.CodeScanResponseContext
47
41
import software.aws.toolkits.jetbrains.services.codewhisperer.model.CreateUploadUrlServiceInvocationContext
48
- import software.aws.toolkits.jetbrains.services.codewhisperer.telemetry.CodeWhispererTelemetryService
49
42
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererConstants
50
43
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererConstants.CODE_SCAN_POLLING_INTERVAL_IN_SECONDS
51
44
import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhispererConstants.FILE_SCANS_THROTTLING_MESSAGE
@@ -59,14 +52,12 @@ import software.aws.toolkits.jetbrains.services.codewhisperer.util.CodeWhisperer
59
52
import software.aws.toolkits.jetbrains.services.codewhisperer.util.getTelemetryErrorMessage
60
53
import software.aws.toolkits.jetbrains.utils.assertIsNonDispatchThread
61
54
import software.aws.toolkits.resources.message
62
- import software.aws.toolkits.telemetry.CodewhispererCodeScanScope
63
55
import software.aws.toolkits.telemetry.CodewhispererLanguage
64
56
import java.nio.file.Path
65
57
import java.time.Duration
66
58
import java.time.Instant
67
59
import java.util.UUID
68
60
import kotlin.coroutines.coroutineContext
69
- import kotlin.io.path.pathString
70
61
71
62
class CodeWhispererCodeScanSession (val sessionContext : CodeScanSessionContext ) {
72
63
private val clientToken: UUID = UUID .randomUUID()
@@ -112,7 +103,7 @@ class CodeWhispererCodeScanSession(val sessionContext: CodeScanSessionContext) {
112
103
// 2 & 3. CreateUploadURL and upload the context.
113
104
currentCoroutineContext.ensureActive()
114
105
val artifactsUploadStartTime = now()
115
- val codeScanName = generateScanName ()
106
+ val codeScanName = UUID .randomUUID().toString ()
116
107
117
108
val taskType = if (sessionContext.codeAnalysisScope == CodeWhispererConstants .CodeAnalysisScope .PROJECT ) {
118
109
CodeWhispererConstants .UploadTaskType .SCAN_PROJECT
@@ -375,26 +366,6 @@ class CodeWhispererCodeScanSession(val sessionContext: CodeScanSessionContext) {
375
366
private fun isAutoScan (): Boolean =
376
367
sessionContext.codeAnalysisScope == CodeWhispererConstants .CodeAnalysisScope .FILE && ! sessionContext.sessionConfig.isInitiatedByChat()
377
368
378
- private fun generateScanName (): String {
379
- val clientId = AwsSettings .getInstance().clientId
380
- val filePath = sessionContext.sessionConfig.getSelectedFile()?.toNioPath()?.pathString
381
- val scope = CodeWhispererTelemetryService .getInstance().mapToTelemetryScope(
382
- sessionContext.codeAnalysisScope,
383
- sessionContext.sessionConfig.isInitiatedByChat()
384
- )
385
- val projectId = if (scope != CodewhispererCodeScanScope .PROJECT && filePath != null ) {
386
- filePath
387
- } else {
388
- ApplicationManager .getApplication().runReadAction<String > {
389
- sessionContext.project.modules.map { module ->
390
- ModuleRootManager .getInstance(module).contentRoots.firstOrNull()?.path
391
- }.joinToString(" ," )
392
- }
393
- }
394
-
395
- return DigestUtils .sha256(" $clientId ::$projectId ::$scope " ).toHexString()
396
- }
397
-
398
369
companion object {
399
370
private val LOG = getLogger<CodeWhispererCodeScanSession >()
400
371
private val MAPPER = jacksonObjectMapper()
0 commit comments