@@ -316,28 +316,27 @@ private boolean writeRequestQueryString(
316
316
317
317
// Build the initial query bag.
318
318
Map <String , String > queryLiterals = trait .getUri ().getQueryLiterals ();
319
- if (!queryLiterals .isEmpty ()) {
320
- // Write any query literals present in the uri.
321
- writer .openBlock ("const query: any = {" , "};" ,
322
- () -> queryLiterals .forEach ((k , v ) -> writer .write ("$S: $S," , k , v )));
323
- } else if (!queryBindings .isEmpty ()) {
324
- writer .write ("const query: any = {};" );
325
- }
326
-
327
- // Handle any additional query bindings.
328
- if (!queryBindings .isEmpty ()) {
329
- Model model = context .getModel ();
330
- for (HttpBinding binding : queryBindings ) {
331
- String memberName = symbolProvider .toMemberName (binding .getMember ());
332
- writer .addImport ("extendedEncodeURIComponent" , "__extendedEncodeURIComponent" ,
333
- "@aws-sdk/smithy-client" );
334
- writer .openBlock ("if (input.$L !== undefined) {" , "}" , memberName , () -> {
335
- Shape target = model .expectShape (binding .getMember ().getTarget ());
336
- String queryValue = getInputValue (context , binding .getLocation (), "input." + memberName ,
337
- binding .getMember (), target );
338
- writer .write ("query[$S] = $L;" , binding .getLocationName (), queryValue );
339
- });
340
- }
319
+ if (!queryLiterals .isEmpty () || !queryBindings .isEmpty ()) {
320
+ writer .openBlock ("const query: any = {" , "};" , () -> {
321
+ if (!queryLiterals .isEmpty ()) {
322
+ // Write any query literals present in the uri.
323
+ queryLiterals .forEach ((k , v ) -> writer .write ("$S: $S," , k , v ));
324
+ }
325
+ // Handle any additional query bindings.
326
+ if (!queryBindings .isEmpty ()) {
327
+ Model model = context .getModel ();
328
+ for (HttpBinding binding : queryBindings ) {
329
+ String memberName = symbolProvider .toMemberName (binding .getMember ());
330
+ writer .addImport ("extendedEncodeURIComponent" , "__extendedEncodeURIComponent" ,
331
+ "@aws-sdk/smithy-client" );
332
+ Shape target = model .expectShape (binding .getMember ().getTarget ());
333
+ String queryValue = getInputValue (context , binding .getLocation (), "input." + memberName ,
334
+ binding .getMember (), target );
335
+ writer .write ("...(input.$L !== undefined && { $S: $L })," , memberName ,
336
+ binding .getLocationName (), queryValue );
337
+ }
338
+ }
339
+ });
341
340
}
342
341
343
342
// Any binding or literal means we generated a query bag.
0 commit comments