From c34602222bffc94ff6252483daa379773b5c6cb3 Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Fri, 14 Apr 2023 01:21:30 +0000 Subject: [PATCH 1/3] ci: regenerated with OpenAPI Doc 1.0, Speakeay CLI 1.20.0 --- README.md | 8 +- RELEASES.md | 10 +- USAGE.md | 6 +- gen.yaml | 6 +- lib/build.gradle | 2 +- .../main/java/structure/Structure/SDK.java | 4 +- .../Structure/utils/PathParamsMetadata.java | 1 + .../java/structure/Structure/utils/Utils.java | 136 +++++++++++------- 8 files changed, 104 insertions(+), 69 deletions(-) diff --git a/README.md b/README.md index ca2b551..4b860ea 100755 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ### Gradle ```groovy -implementation 'structure.Structure:Structure:0.1.1' +implementation 'structure.Structure:Structure:0.2.0' ``` @@ -47,10 +47,10 @@ public class Application { .build(); EnrichCompanyRequest req = new EnrichCompanyRequest() {{ - countryCode = "corrupti"; + countryCode = "MA"; headquarters = "provident"; - id = "distinctio"; - name = "quibusdam"; + id = "bd9d8d69-a674-4e0f-867c-c8796ed151a0"; + name = "Estelle Will"; }} EnrichCompanyResponse res = sdk.companies.enrich(req); diff --git a/RELEASES.md b/RELEASES.md index 7892fac..10d2c3b 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -44,4 +44,12 @@ Based on: - OpenAPI Doc 1.0 https://prod.speakeasyapi.dev/v1/apis/Structure/version/1.0.0/schema/download - Speakeasy CLI 1.19.7 (2.17.9) https://github.com/speakeasy-api/speakeasy ### Releases -- [Maven Central v0.1.1] https://central.sonatype.com/artifact/structure/Structure/0.1.1 - . \ No newline at end of file +- [Maven Central v0.1.1] https://central.sonatype.com/artifact/structure/Structure/0.1.1 - . + +## 2023-04-14 01:21:20 +### Changes +Based on: +- OpenAPI Doc 1.0 https://prod.speakeasyapi.dev/v1/apis/Structure/version/1.0.0/schema/download +- Speakeasy CLI 1.20.0 (2.18.0) https://github.com/speakeasy-api/speakeasy +### Releases +- [Maven Central v0.2.0] https://central.sonatype.com/artifact/structure/Structure/0.2.0 - . \ No newline at end of file diff --git a/USAGE.md b/USAGE.md index da8167d..74063f0 100755 --- a/USAGE.md +++ b/USAGE.md @@ -17,10 +17,10 @@ public class Application { .build(); EnrichCompanyRequest req = new EnrichCompanyRequest() {{ - countryCode = "corrupti"; + countryCode = "MA"; headquarters = "provident"; - id = "distinctio"; - name = "quibusdam"; + id = "bd9d8d69-a674-4e0f-867c-c8796ed151a0"; + name = "Estelle Will"; }} EnrichCompanyResponse res = sdk.companies.enrich(req); diff --git a/gen.yaml b/gen.yaml index 50b7323..9f44cb0 100644 --- a/gen.yaml +++ b/gen.yaml @@ -2,15 +2,15 @@ configVersion: 1.0.0 management: docChecksum: 806f4efd39380ded206093b8704f66ee docVersion: "1.0" - speakeasyVersion: 1.19.7 - generationVersion: 2.17.9 + speakeasyVersion: 1.20.0 + generationVersion: 2.18.0 generation: telemetryEnabled: false sdkClassName: SDK sdkFlattening: false singleTagPerOp: false java: - version: 0.1.1 + version: 0.2.0 artifactID: Structure companyEmail: info@mycompany.com companyName: My Company diff --git a/lib/build.gradle b/lib/build.gradle index 95e54eb..bc34f82 100755 --- a/lib/build.gradle +++ b/lib/build.gradle @@ -41,7 +41,7 @@ publishing { maven(MavenPublication) { groupId = 'structure' artifactId = 'Structure' - version = '0.1.1' + version = '0.2.0' from components.java diff --git a/lib/src/main/java/structure/Structure/SDK.java b/lib/src/main/java/structure/Structure/SDK.java index 39c8611..4d9f6a4 100755 --- a/lib/src/main/java/structure/Structure/SDK.java +++ b/lib/src/main/java/structure/Structure/SDK.java @@ -40,8 +40,8 @@ public class SDK { private structure.Structure.models.shared.Security _security; private String _serverUrl; private String _language = "java"; - private String _sdkVersion = "0.1.1"; - private String _genVersion = "2.17.9"; + private String _sdkVersion = "0.2.0"; + private String _genVersion = "2.18.0"; /** * The Builder class allows the configuration of a new instance of the SDK. */ diff --git a/lib/src/main/java/structure/Structure/utils/PathParamsMetadata.java b/lib/src/main/java/structure/Structure/utils/PathParamsMetadata.java index 59b155b..e9c9f23 100755 --- a/lib/src/main/java/structure/Structure/utils/PathParamsMetadata.java +++ b/lib/src/main/java/structure/Structure/utils/PathParamsMetadata.java @@ -10,6 +10,7 @@ public class PathParamsMetadata extends Metadata { public String style = "simple"; public boolean explode; public String name; + public String serialization; // pathParam:style=simple,explode=false,name=apiID public static PathParamsMetadata parse(Field field) throws IllegalArgumentException, IllegalAccessException { diff --git a/lib/src/main/java/structure/Structure/utils/Utils.java b/lib/src/main/java/structure/Structure/utils/Utils.java index 3458eff..64b2d48 100755 --- a/lib/src/main/java/structure/Structure/utils/Utils.java +++ b/lib/src/main/java/structure/Structure/utils/Utils.java @@ -6,6 +6,8 @@ import java.io.IOException; import java.lang.reflect.Field; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -17,6 +19,9 @@ import org.apache.http.NameValuePair; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; + public final class Utils { public static String generateURL(String baseURL, String path) throws IllegalArgumentException, IllegalAccessException { @@ -29,7 +34,7 @@ public static String generateURL(String baseURL, String path) public static String generateURL(Class type, String baseURL, String path, T params, Map>> globals) - throws IllegalArgumentException, IllegalAccessException { + throws IllegalArgumentException, IllegalAccessException, JsonProcessingException { if (baseURL != null && baseURL.endsWith("/")) { baseURL = baseURL.split("/")[0]; } @@ -50,68 +55,73 @@ public static String generateURL(Class type, String baseUR continue; } - switch (pathParamsMetadata.style) { - case "simple": - switch (Types.getType(value.getClass())) { - case ARRAY: - Object[] array = (Object[]) value; - if (array.length == 0) { - continue; - } - - pathParams.put(pathParamsMetadata.name, - String.join(",", - Arrays.asList(array).stream().map(v -> Utils.valToString(v)) - .collect(Collectors.toList()))); - break; - case MAP: - Map map = (Map) value; - if (map.size() == 0) { - continue; - } - - pathParams.put(pathParamsMetadata.name, - String.join(",", map.entrySet().stream().map(e -> { - if (pathParamsMetadata.explode) { - return String.format("%s=%s", Utils.valToString(e.getKey()), - Utils.valToString(e.getValue())); - } else { - return String.format("%s,%s", Utils.valToString(e.getKey()), - Utils.valToString(e.getValue())); - } - }).collect(Collectors.toList()))); - break; - case OBJECT: - List values = new ArrayList(); - - Field[] valueFields = value.getClass().getFields(); - for (Field valueField : valueFields) { - PathParamsMetadata valuePathParamsMetadata = PathParamsMetadata.parse(valueField); - if (valuePathParamsMetadata == null) { + if (pathParamsMetadata.serialization != null && !pathParamsMetadata.serialization.isBlank()) { + Map serialized = parseSerializedParams(pathParamsMetadata, value); + pathParams.putAll(serialized); + } else { + switch (pathParamsMetadata.style) { + case "simple": + switch (Types.getType(value.getClass())) { + case ARRAY: + Object[] array = (Object[]) value; + if (array.length == 0) { continue; } - Object val = valueField.get(value); - - if (val == null) { + pathParams.put(pathParamsMetadata.name, + String.join(",", + Arrays.asList(array).stream().map(v -> Utils.valToString(v)) + .collect(Collectors.toList()))); + break; + case MAP: + Map map = (Map) value; + if (map.size() == 0) { continue; } - if (pathParamsMetadata.explode) { - values.add(String.format("%s=%s", valuePathParamsMetadata.name, - Utils.valToString(val))); - } else { - values.add(String.format("%s,%s", valuePathParamsMetadata.name, - Utils.valToString(val))); + pathParams.put(pathParamsMetadata.name, + String.join(",", map.entrySet().stream().map(e -> { + if (pathParamsMetadata.explode) { + return String.format("%s=%s", Utils.valToString(e.getKey()), + Utils.valToString(e.getValue())); + } else { + return String.format("%s,%s", Utils.valToString(e.getKey()), + Utils.valToString(e.getValue())); + } + }).collect(Collectors.toList()))); + break; + case OBJECT: + List values = new ArrayList(); + + Field[] valueFields = value.getClass().getFields(); + for (Field valueField : valueFields) { + PathParamsMetadata valuePathParamsMetadata = PathParamsMetadata.parse(valueField); + if (valuePathParamsMetadata == null) { + continue; + } + + Object val = valueField.get(value); + + if (val == null) { + continue; + } + + if (pathParamsMetadata.explode) { + values.add(String.format("%s=%s", valuePathParamsMetadata.name, + Utils.valToString(val))); + } else { + values.add(String.format("%s,%s", valuePathParamsMetadata.name, + Utils.valToString(val))); + } } - } - pathParams.put(pathParamsMetadata.name, String.join(",", values)); - break; - default: - pathParams.put(pathParamsMetadata.name, Utils.valToString(value)); - break; - } + pathParams.put(pathParamsMetadata.name, String.join(",", values)); + break; + default: + pathParams.put(pathParamsMetadata.name, Utils.valToString(value)); + break; + } + } } } @@ -330,6 +340,22 @@ public static Object popualteGlobal(Object value, String fieldName, String param return value; } + private static Map parseSerializedParams(PathParamsMetadata pathParamsMetadata, Object value) + throws JsonProcessingException { + Map params = new HashMap<>(); + + switch (pathParamsMetadata.serialization) { + case "json": + ObjectMapper mapper = JSON.getMapper(); + String json = mapper.writeValueAsString(value); + + params.put(pathParamsMetadata.name, URLEncoder.encode(json, StandardCharsets.UTF_8)); + break; + } + + return params; + } + private Utils() { } } \ No newline at end of file From 8afb3c4f2ed75f04d1bbd4b60f1632ae2984235b Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Tue, 18 Apr 2023 01:21:14 +0000 Subject: [PATCH 2/3] ci: regenerated with OpenAPI Doc 1.0, Speakeay CLI 1.20.1 --- README.md | 2 +- RELEASES.md | 10 +++++++++- gen.yaml | 7 +++---- lib/build.gradle | 2 +- lib/src/main/java/structure/Structure/SDK.java | 4 ++-- 5 files changed, 16 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 4b860ea..074ffed 100755 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ### Gradle ```groovy -implementation 'structure.Structure:Structure:0.2.0' +implementation 'structure.Structure:Structure:0.2.1' ``` diff --git a/RELEASES.md b/RELEASES.md index 10d2c3b..be91c11 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -52,4 +52,12 @@ Based on: - OpenAPI Doc 1.0 https://prod.speakeasyapi.dev/v1/apis/Structure/version/1.0.0/schema/download - Speakeasy CLI 1.20.0 (2.18.0) https://github.com/speakeasy-api/speakeasy ### Releases -- [Maven Central v0.2.0] https://central.sonatype.com/artifact/structure/Structure/0.2.0 - . \ No newline at end of file +- [Maven Central v0.2.0] https://central.sonatype.com/artifact/structure/Structure/0.2.0 - . + +## 2023-04-18 01:21:04 +### Changes +Based on: +- OpenAPI Doc 1.0 https://prod.speakeasyapi.dev/v1/apis/Structure/version/1.0.0/schema/download +- Speakeasy CLI 1.20.1 (2.18.1) https://github.com/speakeasy-api/speakeasy +### Releases +- [Maven Central v0.2.1] https://central.sonatype.com/artifact/structure/Structure/0.2.1 - . \ No newline at end of file diff --git a/gen.yaml b/gen.yaml index 9f44cb0..609f69d 100644 --- a/gen.yaml +++ b/gen.yaml @@ -2,15 +2,14 @@ configVersion: 1.0.0 management: docChecksum: 806f4efd39380ded206093b8704f66ee docVersion: "1.0" - speakeasyVersion: 1.20.0 - generationVersion: 2.18.0 + speakeasyVersion: 1.20.1 + generationVersion: 2.18.1 generation: telemetryEnabled: false sdkClassName: SDK - sdkFlattening: false singleTagPerOp: false java: - version: 0.2.0 + version: 0.2.1 artifactID: Structure companyEmail: info@mycompany.com companyName: My Company diff --git a/lib/build.gradle b/lib/build.gradle index bc34f82..2aa9f4b 100755 --- a/lib/build.gradle +++ b/lib/build.gradle @@ -41,7 +41,7 @@ publishing { maven(MavenPublication) { groupId = 'structure' artifactId = 'Structure' - version = '0.2.0' + version = '0.2.1' from components.java diff --git a/lib/src/main/java/structure/Structure/SDK.java b/lib/src/main/java/structure/Structure/SDK.java index 4d9f6a4..31c5ce4 100755 --- a/lib/src/main/java/structure/Structure/SDK.java +++ b/lib/src/main/java/structure/Structure/SDK.java @@ -40,8 +40,8 @@ public class SDK { private structure.Structure.models.shared.Security _security; private String _serverUrl; private String _language = "java"; - private String _sdkVersion = "0.2.0"; - private String _genVersion = "2.18.0"; + private String _sdkVersion = "0.2.1"; + private String _genVersion = "2.18.1"; /** * The Builder class allows the configuration of a new instance of the SDK. */ From 385a8563616297c24ba7b4687c77afe2e5965ab8 Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Wed, 19 Apr 2023 01:23:28 +0000 Subject: [PATCH 3/3] ci: regenerated with OpenAPI Doc 1.0, Speakeay CLI 1.20.2 --- README.md | 2 +- RELEASES.md | 10 +++++++++- gen.yaml | 6 +++--- lib/build.gradle | 2 +- lib/src/main/java/structure/Structure/SDK.java | 4 ++-- 5 files changed, 16 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 074ffed..ae46a08 100755 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ### Gradle ```groovy -implementation 'structure.Structure:Structure:0.2.1' +implementation 'structure.Structure:Structure:0.2.2' ``` diff --git a/RELEASES.md b/RELEASES.md index be91c11..67f3413 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -60,4 +60,12 @@ Based on: - OpenAPI Doc 1.0 https://prod.speakeasyapi.dev/v1/apis/Structure/version/1.0.0/schema/download - Speakeasy CLI 1.20.1 (2.18.1) https://github.com/speakeasy-api/speakeasy ### Releases -- [Maven Central v0.2.1] https://central.sonatype.com/artifact/structure/Structure/0.2.1 - . \ No newline at end of file +- [Maven Central v0.2.1] https://central.sonatype.com/artifact/structure/Structure/0.2.1 - . + +## 2023-04-19 01:23:19 +### Changes +Based on: +- OpenAPI Doc 1.0 https://prod.speakeasyapi.dev/v1/apis/Structure/version/1.0.0/schema/download +- Speakeasy CLI 1.20.2 (2.18.2) https://github.com/speakeasy-api/speakeasy +### Releases +- [Maven Central v0.2.2] https://central.sonatype.com/artifact/structure/Structure/0.2.2 - . \ No newline at end of file diff --git a/gen.yaml b/gen.yaml index 609f69d..73a88c2 100644 --- a/gen.yaml +++ b/gen.yaml @@ -2,14 +2,14 @@ configVersion: 1.0.0 management: docChecksum: 806f4efd39380ded206093b8704f66ee docVersion: "1.0" - speakeasyVersion: 1.20.1 - generationVersion: 2.18.1 + speakeasyVersion: 1.20.2 + generationVersion: 2.18.2 generation: telemetryEnabled: false sdkClassName: SDK singleTagPerOp: false java: - version: 0.2.1 + version: 0.2.2 artifactID: Structure companyEmail: info@mycompany.com companyName: My Company diff --git a/lib/build.gradle b/lib/build.gradle index 2aa9f4b..4149991 100755 --- a/lib/build.gradle +++ b/lib/build.gradle @@ -41,7 +41,7 @@ publishing { maven(MavenPublication) { groupId = 'structure' artifactId = 'Structure' - version = '0.2.1' + version = '0.2.2' from components.java diff --git a/lib/src/main/java/structure/Structure/SDK.java b/lib/src/main/java/structure/Structure/SDK.java index 31c5ce4..01abe00 100755 --- a/lib/src/main/java/structure/Structure/SDK.java +++ b/lib/src/main/java/structure/Structure/SDK.java @@ -40,8 +40,8 @@ public class SDK { private structure.Structure.models.shared.Security _security; private String _serverUrl; private String _language = "java"; - private String _sdkVersion = "0.2.1"; - private String _genVersion = "2.18.1"; + private String _sdkVersion = "0.2.2"; + private String _genVersion = "2.18.2"; /** * The Builder class allows the configuration of a new instance of the SDK. */