Skip to content

Commit bcb39f1

Browse files
authored
fix(sdk): unwrap scalar record path parameters (#80)
1 parent 2e6fdd9 commit bcb39f1

24 files changed

Lines changed: 239 additions & 104 deletions

codegen/internal/generator/templates/client.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ public final class {{ .ClassName }} {
162162
{{- end }}
163163
String path = {{ quote .Path }};
164164
{{- range .PathParams }}
165-
path = path.replace({{ quote (printf "{%s}" .Name) }}, ApiClient.urlEncode(String.valueOf({{ .FieldName }})));
165+
path = path.replace({{ quote (printf "{%s}" .Name) }}, ApiClient.urlEncode(ApiClient.parameterValue({{ .FieldName }})));
166166
{{- end }}
167167

168168
{{- if or .RequiredQueryParams .OptionalQueryParams }}

codegen/internal/generator/templates/client_async.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ public final class {{ .ClassName }} {
164164
{{- end }}
165165
String path = {{ quote .Path }};
166166
{{- range .PathParams }}
167-
path = path.replace({{ quote (printf "{%s}" .Name) }}, ApiClient.urlEncode(String.valueOf({{ .FieldName }})));
167+
path = path.replace({{ quote (printf "{%s}" .Name) }}, ApiClient.urlEncode(ApiClient.parameterValue({{ .FieldName }})));
168168
{{- end }}
169169

170170
{{- if or .RequiredQueryParams .OptionalQueryParams }}

src/main/java/com/sumup/sdk/clients/CheckoutsAsyncClient.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public CompletableFuture<java.util.Map<String, Object>> createApplePaySession(
8888
throws ApiException {
8989
Objects.requireNonNull(id, "id");
9090
String path = "/v0.2/checkouts/{id}/apple-pay-session";
91-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
91+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
9292

9393
return this.apiClient.sendAsync(
9494
HttpMethod.PUT,
@@ -190,7 +190,7 @@ public CompletableFuture<com.sumup.sdk.models.Checkout> deactivateCheckout(
190190
String id, RequestOptions requestOptions) throws ApiException {
191191
Objects.requireNonNull(id, "id");
192192
String path = "/v0.1/checkouts/{id}";
193-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
193+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
194194

195195
return this.apiClient.sendAsync(
196196
HttpMethod.DELETE,
@@ -239,7 +239,7 @@ public CompletableFuture<com.sumup.sdk.models.CheckoutSuccess> getCheckout(
239239
String id, RequestOptions requestOptions) throws ApiException {
240240
Objects.requireNonNull(id, "id");
241241
String path = "/v0.1/checkouts/{id}";
242-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
242+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
243243

244244
return this.apiClient.sendAsync(
245245
HttpMethod.GET,
@@ -312,7 +312,9 @@ public CompletableFuture<com.sumup.sdk.models.GetPaymentMethodsResponse> getPaym
312312
throws ApiException {
313313
Objects.requireNonNull(merchantCode, "merchantCode");
314314
String path = "/v0.1/merchants/{merchant_code}/payment-methods";
315-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
315+
path =
316+
path.replace(
317+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
316318
Map<String, Object> queryParams = new LinkedHashMap<>();
317319
if (getPaymentMethods != null) {
318320
queryParams.putAll(getPaymentMethods.toMap());
@@ -441,7 +443,7 @@ public CompletableFuture<com.sumup.sdk.models.CheckoutSuccess> processCheckout(
441443
Objects.requireNonNull(id, "id");
442444
Objects.requireNonNull(request, "request");
443445
String path = "/v0.1/checkouts/{id}";
444-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
446+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
445447

446448
return this.apiClient.sendAsync(
447449
HttpMethod.PUT,

src/main/java/com/sumup/sdk/clients/CheckoutsClient.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public java.util.Map<String, Object> createApplePaySession(
8787
throws ApiException {
8888
Objects.requireNonNull(id, "id");
8989
String path = "/v0.2/checkouts/{id}/apple-pay-session";
90-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
90+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
9191

9292
return this.apiClient.send(
9393
HttpMethod.PUT,
@@ -188,7 +188,7 @@ public com.sumup.sdk.models.Checkout deactivateCheckout(String id, RequestOption
188188
throws ApiException {
189189
Objects.requireNonNull(id, "id");
190190
String path = "/v0.1/checkouts/{id}";
191-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
191+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
192192

193193
return this.apiClient.send(
194194
HttpMethod.DELETE,
@@ -236,7 +236,7 @@ public com.sumup.sdk.models.CheckoutSuccess getCheckout(String id, RequestOption
236236
throws ApiException {
237237
Objects.requireNonNull(id, "id");
238238
String path = "/v0.1/checkouts/{id}";
239-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
239+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
240240

241241
return this.apiClient.send(
242242
HttpMethod.GET,
@@ -306,7 +306,9 @@ public com.sumup.sdk.models.GetPaymentMethodsResponse getPaymentMethods(
306306
throws ApiException {
307307
Objects.requireNonNull(merchantCode, "merchantCode");
308308
String path = "/v0.1/merchants/{merchant_code}/payment-methods";
309-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
309+
path =
310+
path.replace(
311+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
310312
Map<String, Object> queryParams = new LinkedHashMap<>();
311313
if (getPaymentMethods != null) {
312314
queryParams.putAll(getPaymentMethods.toMap());
@@ -431,7 +433,7 @@ public com.sumup.sdk.models.CheckoutSuccess processCheckout(
431433
Objects.requireNonNull(id, "id");
432434
Objects.requireNonNull(request, "request");
433435
String path = "/v0.1/checkouts/{id}";
434-
path = path.replace("{id}", ApiClient.urlEncode(String.valueOf(id)));
436+
path = path.replace("{id}", ApiClient.urlEncode(ApiClient.parameterValue(id)));
435437

436438
return this.apiClient.send(
437439
HttpMethod.PUT,

src/main/java/com/sumup/sdk/clients/CustomersAsyncClient.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,8 @@ public CompletableFuture<Void> deactivatePaymentInstrument(
115115
Objects.requireNonNull(customerId, "customerId");
116116
Objects.requireNonNull(token, "token");
117117
String path = "/v0.1/customers/{customer_id}/payment-instruments/{token}";
118-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
119-
path = path.replace("{token}", ApiClient.urlEncode(String.valueOf(token)));
118+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
119+
path = path.replace("{token}", ApiClient.urlEncode(ApiClient.parameterValue(token)));
120120

121121
return this.apiClient.sendAsync(
122122
HttpMethod.DELETE, path, null, null, null, null, requestOptions);
@@ -159,7 +159,7 @@ public CompletableFuture<com.sumup.sdk.models.Customer> getCustomer(
159159
String customerId, RequestOptions requestOptions) throws ApiException {
160160
Objects.requireNonNull(customerId, "customerId");
161161
String path = "/v0.1/customers/{customer_id}";
162-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
162+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
163163

164164
return this.apiClient.sendAsync(
165165
HttpMethod.GET,
@@ -208,7 +208,7 @@ public CompletableFuture<com.sumup.sdk.models.Customer> getCustomer(
208208
listPaymentInstruments(String customerId, RequestOptions requestOptions) throws ApiException {
209209
Objects.requireNonNull(customerId, "customerId");
210210
String path = "/v0.1/customers/{customer_id}/payment-instruments";
211-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
211+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
212212

213213
return this.apiClient.sendAsync(
214214
HttpMethod.GET,
@@ -265,7 +265,7 @@ public CompletableFuture<com.sumup.sdk.models.Customer> updateCustomer(
265265
Objects.requireNonNull(customerId, "customerId");
266266
Objects.requireNonNull(request, "request");
267267
String path = "/v0.1/customers/{customer_id}";
268-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
268+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
269269

270270
return this.apiClient.sendAsync(
271271
HttpMethod.PUT,

src/main/java/com/sumup/sdk/clients/CustomersClient.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,8 @@ public void deactivatePaymentInstrument(
111111
Objects.requireNonNull(customerId, "customerId");
112112
Objects.requireNonNull(token, "token");
113113
String path = "/v0.1/customers/{customer_id}/payment-instruments/{token}";
114-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
115-
path = path.replace("{token}", ApiClient.urlEncode(String.valueOf(token)));
114+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
115+
path = path.replace("{token}", ApiClient.urlEncode(ApiClient.parameterValue(token)));
116116

117117
this.apiClient.send(HttpMethod.DELETE, path, null, null, null, null, requestOptions);
118118
}
@@ -153,7 +153,7 @@ public com.sumup.sdk.models.Customer getCustomer(String customerId, RequestOptio
153153
throws ApiException {
154154
Objects.requireNonNull(customerId, "customerId");
155155
String path = "/v0.1/customers/{customer_id}";
156-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
156+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
157157

158158
return this.apiClient.send(
159159
HttpMethod.GET,
@@ -200,7 +200,7 @@ public java.util.List<com.sumup.sdk.models.PaymentInstrumentResponse> listPaymen
200200
String customerId, RequestOptions requestOptions) throws ApiException {
201201
Objects.requireNonNull(customerId, "customerId");
202202
String path = "/v0.1/customers/{customer_id}/payment-instruments";
203-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
203+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
204204

205205
return this.apiClient.send(
206206
HttpMethod.GET,
@@ -257,7 +257,7 @@ public com.sumup.sdk.models.Customer updateCustomer(
257257
Objects.requireNonNull(customerId, "customerId");
258258
Objects.requireNonNull(request, "request");
259259
String path = "/v0.1/customers/{customer_id}";
260-
path = path.replace("{customer_id}", ApiClient.urlEncode(String.valueOf(customerId)));
260+
path = path.replace("{customer_id}", ApiClient.urlEncode(ApiClient.parameterValue(customerId)));
261261

262262
return this.apiClient.send(
263263
HttpMethod.PUT,

src/main/java/com/sumup/sdk/clients/MembersAsyncClient.java

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,9 @@ public CompletableFuture<com.sumup.sdk.models.Member> createMerchantMember(
7171
Objects.requireNonNull(merchantCode, "merchantCode");
7272
Objects.requireNonNull(request, "request");
7373
String path = "/v0.1/merchants/{merchant_code}/members";
74-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
74+
path =
75+
path.replace(
76+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
7577

7678
return this.apiClient.sendAsync(
7779
HttpMethod.POST,
@@ -121,8 +123,10 @@ public CompletableFuture<Void> deleteMerchantMember(
121123
Objects.requireNonNull(memberId, "memberId");
122124
Objects.requireNonNull(merchantCode, "merchantCode");
123125
String path = "/v0.1/merchants/{merchant_code}/members/{member_id}";
124-
path = path.replace("{member_id}", ApiClient.urlEncode(String.valueOf(memberId)));
125-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
126+
path = path.replace("{member_id}", ApiClient.urlEncode(ApiClient.parameterValue(memberId)));
127+
path =
128+
path.replace(
129+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
126130

127131
return this.apiClient.sendAsync(
128132
HttpMethod.DELETE, path, null, null, null, null, requestOptions);
@@ -166,8 +170,10 @@ public CompletableFuture<com.sumup.sdk.models.Member> getMerchantMember(
166170
Objects.requireNonNull(memberId, "memberId");
167171
Objects.requireNonNull(merchantCode, "merchantCode");
168172
String path = "/v0.1/merchants/{merchant_code}/members/{member_id}";
169-
path = path.replace("{member_id}", ApiClient.urlEncode(String.valueOf(memberId)));
170-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
173+
path = path.replace("{member_id}", ApiClient.urlEncode(ApiClient.parameterValue(memberId)));
174+
path =
175+
path.replace(
176+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
171177

172178
return this.apiClient.sendAsync(
173179
HttpMethod.GET,
@@ -240,7 +246,9 @@ public CompletableFuture<com.sumup.sdk.models.ListMerchantMembersResponse> listM
240246
throws ApiException {
241247
Objects.requireNonNull(merchantCode, "merchantCode");
242248
String path = "/v0.1/merchants/{merchant_code}/members";
243-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
249+
path =
250+
path.replace(
251+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
244252
Map<String, Object> queryParams = new LinkedHashMap<>();
245253
if (listMerchantMembers != null) {
246254
queryParams.putAll(listMerchantMembers.toMap());
@@ -304,8 +312,10 @@ public CompletableFuture<com.sumup.sdk.models.Member> updateMerchantMember(
304312
Objects.requireNonNull(merchantCode, "merchantCode");
305313
Objects.requireNonNull(request, "request");
306314
String path = "/v0.1/merchants/{merchant_code}/members/{member_id}";
307-
path = path.replace("{member_id}", ApiClient.urlEncode(String.valueOf(memberId)));
308-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
315+
path = path.replace("{member_id}", ApiClient.urlEncode(ApiClient.parameterValue(memberId)));
316+
path =
317+
path.replace(
318+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
309319

310320
return this.apiClient.sendAsync(
311321
HttpMethod.PUT,

src/main/java/com/sumup/sdk/clients/MembersClient.java

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,9 @@ public com.sumup.sdk.models.Member createMerchantMember(
7070
Objects.requireNonNull(merchantCode, "merchantCode");
7171
Objects.requireNonNull(request, "request");
7272
String path = "/v0.1/merchants/{merchant_code}/members";
73-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
73+
path =
74+
path.replace(
75+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
7476

7577
return this.apiClient.send(
7678
HttpMethod.POST,
@@ -117,8 +119,10 @@ public void deleteMerchantMember(
117119
Objects.requireNonNull(memberId, "memberId");
118120
Objects.requireNonNull(merchantCode, "merchantCode");
119121
String path = "/v0.1/merchants/{merchant_code}/members/{member_id}";
120-
path = path.replace("{member_id}", ApiClient.urlEncode(String.valueOf(memberId)));
121-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
122+
path = path.replace("{member_id}", ApiClient.urlEncode(ApiClient.parameterValue(memberId)));
123+
path =
124+
path.replace(
125+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
122126

123127
this.apiClient.send(HttpMethod.DELETE, path, null, null, null, null, requestOptions);
124128
}
@@ -161,8 +165,10 @@ public com.sumup.sdk.models.Member getMerchantMember(
161165
Objects.requireNonNull(memberId, "memberId");
162166
Objects.requireNonNull(merchantCode, "merchantCode");
163167
String path = "/v0.1/merchants/{merchant_code}/members/{member_id}";
164-
path = path.replace("{member_id}", ApiClient.urlEncode(String.valueOf(memberId)));
165-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
168+
path = path.replace("{member_id}", ApiClient.urlEncode(ApiClient.parameterValue(memberId)));
169+
path =
170+
path.replace(
171+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
166172

167173
return this.apiClient.send(
168174
HttpMethod.GET,
@@ -232,7 +238,9 @@ public com.sumup.sdk.models.ListMerchantMembersResponse listMerchantMembers(
232238
throws ApiException {
233239
Objects.requireNonNull(merchantCode, "merchantCode");
234240
String path = "/v0.1/merchants/{merchant_code}/members";
235-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
241+
path =
242+
path.replace(
243+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
236244
Map<String, Object> queryParams = new LinkedHashMap<>();
237245
if (listMerchantMembers != null) {
238246
queryParams.putAll(listMerchantMembers.toMap());
@@ -296,8 +304,10 @@ public com.sumup.sdk.models.Member updateMerchantMember(
296304
Objects.requireNonNull(merchantCode, "merchantCode");
297305
Objects.requireNonNull(request, "request");
298306
String path = "/v0.1/merchants/{merchant_code}/members/{member_id}";
299-
path = path.replace("{member_id}", ApiClient.urlEncode(String.valueOf(memberId)));
300-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
307+
path = path.replace("{member_id}", ApiClient.urlEncode(ApiClient.parameterValue(memberId)));
308+
path =
309+
path.replace(
310+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
301311

302312
return this.apiClient.send(
303313
HttpMethod.PUT,

src/main/java/com/sumup/sdk/clients/MerchantsAsyncClient.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,9 @@ public CompletableFuture<com.sumup.sdk.models.Merchant> getMerchant(
8484
throws ApiException {
8585
Objects.requireNonNull(merchantCode, "merchantCode");
8686
String path = "/v1/merchants/{merchant_code}";
87-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
87+
path =
88+
path.replace(
89+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
8890
Map<String, Object> queryParams = new LinkedHashMap<>();
8991
if (getMerchant != null) {
9092
queryParams.putAll(getMerchant.toMap());
@@ -163,8 +165,10 @@ public CompletableFuture<com.sumup.sdk.models.Person> getPerson(
163165
Objects.requireNonNull(merchantCode, "merchantCode");
164166
Objects.requireNonNull(personId, "personId");
165167
String path = "/v1/merchants/{merchant_code}/persons/{person_id}";
166-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
167-
path = path.replace("{person_id}", ApiClient.urlEncode(String.valueOf(personId)));
168+
path =
169+
path.replace(
170+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
171+
path = path.replace("{person_id}", ApiClient.urlEncode(ApiClient.parameterValue(personId)));
168172
Map<String, Object> queryParams = new LinkedHashMap<>();
169173
if (getPerson != null) {
170174
queryParams.putAll(getPerson.toMap());
@@ -239,7 +243,9 @@ public CompletableFuture<com.sumup.sdk.models.ListPersonsResponseBody> listPerso
239243
throws ApiException {
240244
Objects.requireNonNull(merchantCode, "merchantCode");
241245
String path = "/v1/merchants/{merchant_code}/persons";
242-
path = path.replace("{merchant_code}", ApiClient.urlEncode(String.valueOf(merchantCode)));
246+
path =
247+
path.replace(
248+
"{merchant_code}", ApiClient.urlEncode(ApiClient.parameterValue(merchantCode)));
243249
Map<String, Object> queryParams = new LinkedHashMap<>();
244250
if (listPersons != null) {
245251
queryParams.putAll(listPersons.toMap());

0 commit comments

Comments
 (0)