Skip to content

Commit 0d599da

Browse files
authored
fix(s3-control): default config.signingEscapePath to false (#4013)
1 parent b19f355 commit 0d599da

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed

clients/client-s3-control/src/runtimeConfig.shared.ts

+1
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,6 @@ export const getRuntimeConfig = (config: S3ControlClientConfig) => ({
1414
logger: config?.logger ?? ({} as __Logger),
1515
regionInfoProvider: config?.regionInfoProvider ?? defaultRegionInfoProvider,
1616
serviceId: config?.serviceId ?? "S3 Control",
17+
signingEscapePath: config?.signingEscapePath ?? false,
1718
urlParser: config?.urlParser ?? parseUrl,
1819
});

codegen/smithy-aws-typescript-codegen/src/main/java/software/amazon/smithy/aws/typescript/codegen/AddS3ControlDependency.java

+26
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,27 @@
1818
import static software.amazon.smithy.typescript.codegen.integration.RuntimeClientPlugin.Convention.HAS_CONFIG;
1919
import static software.amazon.smithy.typescript.codegen.integration.RuntimeClientPlugin.Convention.HAS_MIDDLEWARE;
2020

21+
import java.util.Collections;
2122
import java.util.List;
23+
import java.util.Map;
2224
import java.util.Optional;
25+
import java.util.function.Consumer;
2326
import software.amazon.smithy.aws.traits.ServiceTrait;
27+
import software.amazon.smithy.codegen.core.SymbolProvider;
2428
import software.amazon.smithy.model.Model;
2529
import software.amazon.smithy.model.shapes.MemberShape;
2630
import software.amazon.smithy.model.shapes.OperationShape;
2731
import software.amazon.smithy.model.shapes.ServiceShape;
2832
import software.amazon.smithy.model.shapes.Shape;
2933
import software.amazon.smithy.model.traits.RequiredTrait;
3034
import software.amazon.smithy.model.transform.ModelTransformer;
35+
import software.amazon.smithy.typescript.codegen.LanguageTarget;
3136
import software.amazon.smithy.typescript.codegen.TypeScriptSettings;
37+
import software.amazon.smithy.typescript.codegen.TypeScriptWriter;
3238
import software.amazon.smithy.typescript.codegen.integration.RuntimeClientPlugin;
3339
import software.amazon.smithy.typescript.codegen.integration.TypeScriptIntegration;
3440
import software.amazon.smithy.utils.ListUtils;
41+
import software.amazon.smithy.utils.MapUtils;
3542
import software.amazon.smithy.utils.SmithyInternalApi;
3643

3744
/**
@@ -81,6 +88,25 @@ public Model preprocessModel(Model model, TypeScriptSettings settings) {
8188
});
8289
}
8390

91+
@Override
92+
public Map<String, Consumer<TypeScriptWriter>> getRuntimeConfigWriters(
93+
TypeScriptSettings settings, Model model,
94+
SymbolProvider symbolProvider, LanguageTarget target
95+
) {
96+
if (!isS3Control(settings.getService(model))) {
97+
return Collections.emptyMap();
98+
}
99+
switch (target) {
100+
case SHARED:
101+
return MapUtils.of("signingEscapePath", writer -> {
102+
writer.write("false");
103+
});
104+
case NODE:
105+
default:
106+
return Collections.emptyMap();
107+
}
108+
}
109+
84110
private static boolean isS3Control(ServiceShape service) {
85111
String serviceId = service.getTrait(ServiceTrait.class).map(ServiceTrait::getSdkId).orElse("");
86112
return serviceId.equals("S3 Control");

0 commit comments

Comments
 (0)