commonMain.aws.sdk.kotlin.services.eventbridge.auth.EventBridgeAuthSchemeProviderAdapter.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of eventbridge-jvm Show documentation
Show all versions of eventbridge-jvm Show documentation
The AWS SDK for Kotlin client for EventBridge
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.eventbridge.auth
import aws.sdk.kotlin.services.eventbridge.EventBridgeClient
import aws.sdk.kotlin.services.eventbridge.endpoints.internal.resolveEndpointParams
import aws.smithy.kotlin.runtime.auth.AuthOption
import aws.smithy.kotlin.runtime.client.SdkClientOption
import aws.smithy.kotlin.runtime.collections.get
import aws.smithy.kotlin.runtime.http.auth.AnonymousIdentity
import aws.smithy.kotlin.runtime.http.operation.AuthSchemeResolver
import aws.smithy.kotlin.runtime.http.operation.ResolveEndpointRequest
import aws.smithy.kotlin.runtime.http.operation.SdkHttpRequest
import aws.smithy.kotlin.runtime.http.request.immutableView
/**
* Adapts the service specific auth scheme resolver to the agnostic runtime interface and binds the auth parameters
*/
internal class EventBridgeAuthSchemeProviderAdapter(private val config: EventBridgeClient.Config): AuthSchemeResolver {
override suspend fun resolve(request: SdkHttpRequest): List {
val params = EventBridgeAuthSchemeParameters {
operationName = request.context[SdkClientOption.OperationName]
val resolveEndpointReq = ResolveEndpointRequest(request.context, request.subject.immutableView(), AnonymousIdentity)
endpointParameters = resolveEndpointParams(config, resolveEndpointReq)
}
return config.authSchemeProvider.resolveAuthScheme(params)
}
}