Skip to content

Commit b061876

Browse files
authored
Fix plugin initialization exception due to service loader issues (#2967)
1 parent 5f2549a commit b061876

File tree

4 files changed

+17
-7
lines changed

4 files changed

+17
-7
lines changed

jetbrains-core/src/software/aws/toolkits/jetbrains/core/execution/AwsConnectionExtension.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,9 @@ import software.aws.toolkits.telemetry.Result.Failed
2323
import software.aws.toolkits.telemetry.Result.Succeeded
2424

2525
class AwsConnectionRunConfigurationExtension<T : RunConfigurationBase<*>> {
26-
private val regionProvider = AwsRegionProvider.getInstance()
27-
private val credentialManager = CredentialManager.getInstance()
28-
2926
fun addEnvironmentVariables(configuration: T, environment: MutableMap<String, String>, runtimeString: () -> String? = { null }) {
27+
val regionProvider = AwsRegionProvider.getInstance()
28+
val credentialManager = CredentialManager.getInstance()
3029
val credentialConfiguration = configuration.getCopyableUserData(AWS_CONNECTION_RUN_CONFIGURATION_KEY) ?: return
3130

3231
try {

jetbrains-core/src/software/aws/toolkits/jetbrains/services/telemetry/TelemetryService.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,11 @@ abstract class TelemetryService(private val publisher: TelemetryPublisher, priva
126126
}
127127
}
128128

129-
class DefaultTelemetryService : TelemetryService(PUBLISHER, DefaultTelemetryBatcher(PUBLISHER)) {
129+
class DefaultTelemetryService : TelemetryService {
130+
constructor() : super(publisher, batcher)
131+
130132
private companion object {
131-
val PUBLISHER = DefaultTelemetryPublisher()
133+
private val publisher: TelemetryPublisher by lazy { DefaultTelemetryPublisher() }
134+
private val batcher: TelemetryBatcher by lazy { DefaultTelemetryBatcher(publisher) }
132135
}
133136
}

jetbrains-core/tst/software/aws/toolkits/jetbrains/services/telemetry/MockTelemetryService.kt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,17 @@ package software.aws.toolkits.jetbrains.services.telemetry
66
import software.amazon.awssdk.services.toolkittelemetry.model.Sentiment
77
import software.aws.toolkits.core.telemetry.DefaultTelemetryBatcher
88
import software.aws.toolkits.core.telemetry.MetricEvent
9+
import software.aws.toolkits.core.telemetry.TelemetryBatcher
910
import software.aws.toolkits.core.telemetry.TelemetryPublisher
1011

11-
class NoOpTelemetryService() : TelemetryService(NoOpPublisher(), DefaultTelemetryBatcher(NoOpPublisher()))
12+
class NoOpTelemetryService : TelemetryService {
13+
constructor() : super(publisher, batcher)
14+
15+
private companion object {
16+
private val publisher: TelemetryPublisher by lazy { NoOpPublisher() }
17+
private val batcher: TelemetryBatcher by lazy { DefaultTelemetryBatcher(publisher) }
18+
}
19+
}
1220

1321
class NoOpPublisher() : TelemetryPublisher {
1422
override suspend fun publish(metricEvents: Collection<MetricEvent>) {}

jetbrains-core/tst/software/aws/toolkits/jetbrains/services/telemetry/TelemetryServiceTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ import java.util.concurrent.CountDownLatch
4040
import java.util.concurrent.TimeUnit
4141

4242
class TelemetryServiceTest {
43-
private class TestTelemetryService(publlisher: TelemetryPublisher = NoOpPublisher(), batcher: TelemetryBatcher) : TelemetryService(publlisher, batcher)
43+
private class TestTelemetryService(publisher: TelemetryPublisher = NoOpPublisher(), batcher: TelemetryBatcher) : TelemetryService(publisher, batcher)
4444

4545
@Rule
4646
@JvmField

0 commit comments

Comments
 (0)