Skip to content

Commit

Permalink
fix!: Remove mutating 'addInterceptor' methods from client config
Browse files Browse the repository at this point in the history
  • Loading branch information
jbelkins committed Feb 5, 2025
1 parent 524c8ef commit 6ffb9c6
Show file tree
Hide file tree
Showing 5 changed files with 2 additions and 32 deletions.
5 changes: 0 additions & 5 deletions Sources/ClientRuntime/Config/DefaultClientConfiguration.swift
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,5 @@ public protocol DefaultClientConfiguration: ClientConfiguration {
/// If none is provided, only a default logger provider will be used.
var telemetryProvider: TelemetryProvider { get set }

/// Adds an `InterceptorProvider` that will be used to provide interceptors for all operations.
///
/// - Parameter provider: The `InterceptorProvider` to add.
func addInterceptorProvider(_ provider: InterceptorProvider)

/// TODO(plugins): Add Checksum, etc.
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,4 @@ public protocol DefaultHttpClientConfiguration: ClientConfiguration {
///
/// Default resolver will look for the token in the `~/.aws/sso/cache` directory.
var bearerTokenIdentityResolver: any BearerTokenIdentityResolver { get set }

/// Adds a `HttpInterceptorProvider` that will be used to provide interceptors for all HTTP operations.
///
/// - Parameter provider: The `HttpInterceptorProvider` to add.
func addInterceptorProvider(_ provider: HttpInterceptorProvider)
}
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,8 @@ class SwiftWriter(

fun addImport(symbol: Symbol) {
symbol.references.forEach { addImport(it.symbol) }
val additionalImports = symbol.getProperty("additionalImports").getOrElse { emptyList<Symbol>() } as List<Symbol>
additionalImports.forEach { addImport(it) }
if (symbol.isBuiltIn || symbol.isServiceNestedNamespace || symbol.namespace.isEmpty()) return
val spiNames = symbol.getProperty("spiNames").getOrElse { emptyList<String>() } as List<String>
val decl = symbol.getProperty("decl").getOrNull()?.toString()
Expand All @@ -127,8 +129,6 @@ class SwiftWriter(
addImport(symbol.namespace, internalSPINames = spiNames)
}
symbol.dependencies.forEach { addDependency(it) }
val additionalImports = symbol.getProperty("additionalImports").getOrElse { emptyList<Symbol>() } as List<Symbol>
additionalImports.forEach { addImport(it) }
}

fun addImport(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,4 @@ class DefaultClientConfiguration : ClientConfiguration {
accessModifier = AccessModifier.PublicPrivateSet
)
)

override fun getMethods(ctx: ProtocolGenerator.GenerationContext): Set<Function> = setOf(
Function(
name = "addInterceptorProvider",
renderBody = { writer -> writer.write("self.interceptorProviders.append(provider)") },
parameters = listOf(
FunctionParameter.NoLabel("provider", ClientRuntimeTypes.Core.InterceptorProvider)
),
)
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,14 +54,4 @@ class DefaultHttpClientConfiguration : ClientConfiguration {
{ it.format("\$N(token: \$N(token: \"\"))", SmithyIdentityTypes.StaticBearerTokenIdentityResolver, SmithyIdentityTypes.BearerTokenIdentity) }
)
)

override fun getMethods(ctx: ProtocolGenerator.GenerationContext): Set<Function> = setOf(
Function(
name = "addInterceptorProvider",
renderBody = { writer -> writer.write("self.httpInterceptorProviders.append(provider)") },
parameters = listOf(
FunctionParameter.NoLabel("provider", ClientRuntimeTypes.Core.HttpInterceptorProvider)
),
)
)
}

0 comments on commit 6ffb9c6

Please sign in to comment.