Skip to content

Commit 16c1fce

Browse files
committed
chore(codegen): remove redundant checks for ifPresent
1 parent 2e46d06 commit 16c1fce

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

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

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import software.amazon.smithy.codegen.core.SymbolProvider;
2929
import software.amazon.smithy.model.Model;
3030
import software.amazon.smithy.model.knowledge.TopDownIndex;
31+
import software.amazon.smithy.model.shapes.MemberShape;
3132
import software.amazon.smithy.model.shapes.OperationShape;
3233
import software.amazon.smithy.model.shapes.ServiceShape;
3334
import software.amazon.smithy.model.shapes.StructureShape;
@@ -203,13 +204,14 @@ private static Map<String, Object> getPluginFunctionParams(
203204
params.put("requestChecksumRequired", httpChecksumTrait.isRequestChecksumRequired());
204205
httpChecksumTrait.getRequestAlgorithmMember().ifPresent(requestAlgorithmMember -> {
205206
params.put("requestAlgorithmMember", requestAlgorithmMember);
206-
operation.getInput().ifPresent(inputShapeId -> {
207-
StructureShape inputShape = model.expectShape(inputShapeId, StructureShape.class);
208-
inputShape.getMember(requestAlgorithmMember).ifPresent(requestAlgorithmMemberShape -> {
209-
requestAlgorithmMemberShape.getTrait(HttpHeaderTrait.class).ifPresent(httpHeaderTrait -> {
210-
params.put("requestAlgorithmMemberHttpHeader", httpHeaderTrait.getValue());
211-
});
212-
});
207+
208+
// We know that input shape is structure, and contains requestAlgorithmMember.
209+
StructureShape inputShape = model.expectShape(operation.getInput().get(), StructureShape.class);
210+
MemberShape requestAlgorithmMemberShape = inputShape.getAllMembers().get(requestAlgorithmMember);
211+
212+
// Set requestAlgorithmMemberHttpHeader if HttpHeaderTrait is present.
213+
requestAlgorithmMemberShape.getTrait(HttpHeaderTrait.class).ifPresent(httpHeaderTrait -> {
214+
params.put("requestAlgorithmMemberHttpHeader", httpHeaderTrait.getValue());
213215
});
214216
});
215217
httpChecksumTrait.getRequestValidationModeMember().ifPresent(requestValidationModeMember -> {

0 commit comments

Comments
 (0)