diff --git a/CI/samples.ci/client/petstore/java/test-manual/okhttp-gson/api/PetApiTest.java b/CI/samples.ci/client/petstore/java/test-manual/okhttp-gson/api/PetApiTest.java index 6a6e788acd3..9562854f24c 100644 --- a/CI/samples.ci/client/petstore/java/test-manual/okhttp-gson/api/PetApiTest.java +++ b/CI/samples.ci/client/petstore/java/test-manual/okhttp-gson/api/PetApiTest.java @@ -26,8 +26,10 @@ import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.concurrent.ThreadLocalRandom; import java.io.BufferedWriter; import java.io.File; @@ -324,7 +326,7 @@ public class PetApiTest { api.updatePet(pet); - List pets = api.findPetsByTags(Arrays.asList("friendly")); + Set pets = api.findPetsByTags(new HashSet<>(Arrays.asList("friendly"))); assertNotNull(pets); boolean found = false; @@ -396,7 +398,7 @@ public class PetApiTest { assertTrue(pet1.hashCode() == pet1.hashCode()); pet2.setName("really-happy"); - pet2.setPhotoUrls(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")); + pet2.setPhotoUrls(new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"))); assertFalse(pet1.equals(pet2)); assertFalse(pet2.equals(pet1)); assertFalse(pet1.hashCode() == (pet2.hashCode())); @@ -404,7 +406,7 @@ public class PetApiTest { assertTrue(pet2.hashCode() == pet2.hashCode()); pet1.setName("really-happy"); - pet1.setPhotoUrls(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")); + pet1.setPhotoUrls(new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"))); assertTrue(pet1.equals(pet2)); assertTrue(pet2.equals(pet1)); assertTrue(pet1.hashCode() == pet2.hashCode()); @@ -423,7 +425,7 @@ public class PetApiTest { pet.setCategory(category); pet.setStatus(Pet.StatusEnum.AVAILABLE); - List photos = Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"); + Set photos = new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")); pet.setPhotoUrls(photos); return pet; diff --git a/docs/generators/android.md b/docs/generators/android.md index 48cef4ce53c..c499a15ff94 100644 --- a/docs/generators/android.md +++ b/docs/generators/android.md @@ -36,6 +36,7 @@ sidebar_label: android |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/apache2.md b/docs/generators/apache2.md index d097e39d84a..599189a5598 100644 --- a/docs/generators/apache2.md +++ b/docs/generators/apache2.md @@ -24,6 +24,7 @@ sidebar_label: apache2 |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/bash.md b/docs/generators/bash.md index 724e3d9a470..75dde1d62cd 100644 --- a/docs/generators/bash.md +++ b/docs/generators/bash.md @@ -31,6 +31,7 @@ sidebar_label: bash |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/clojure.md b/docs/generators/clojure.md index f2a755332bf..0cf52175e71 100644 --- a/docs/generators/clojure.md +++ b/docs/generators/clojure.md @@ -30,6 +30,7 @@ sidebar_label: clojure |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/eiffel.md b/docs/generators/eiffel.md index 6f1dd698cf7..35bb5803f45 100644 --- a/docs/generators/eiffel.md +++ b/docs/generators/eiffel.md @@ -20,6 +20,7 @@ sidebar_label: eiffel |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/elixir.md b/docs/generators/elixir.md index c13f447d0c8..9b7b08bd44b 100644 --- a/docs/generators/elixir.md +++ b/docs/generators/elixir.md @@ -26,6 +26,7 @@ sidebar_label: elixir |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/erlang-client.md b/docs/generators/erlang-client.md index e3aefe0eec4..3e33b145260 100644 --- a/docs/generators/erlang-client.md +++ b/docs/generators/erlang-client.md @@ -19,6 +19,7 @@ sidebar_label: erlang-client |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/erlang-proper.md b/docs/generators/erlang-proper.md index 7fa79c49e3c..1e008d93482 100644 --- a/docs/generators/erlang-proper.md +++ b/docs/generators/erlang-proper.md @@ -19,6 +19,7 @@ sidebar_label: erlang-proper |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/erlang-server.md b/docs/generators/erlang-server.md index 7ae5e8f9cca..fe00d6d2d74 100644 --- a/docs/generators/erlang-server.md +++ b/docs/generators/erlang-server.md @@ -19,6 +19,7 @@ sidebar_label: erlang-server |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/graphql-nodejs-express-server.md b/docs/generators/graphql-nodejs-express-server.md index e9200451b8f..4a27ec56506 100644 --- a/docs/generators/graphql-nodejs-express-server.md +++ b/docs/generators/graphql-nodejs-express-server.md @@ -20,6 +20,7 @@ sidebar_label: graphql-nodejs-express-server |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/graphql-schema.md b/docs/generators/graphql-schema.md index eec8360bb38..3e89d0f5700 100644 --- a/docs/generators/graphql-schema.md +++ b/docs/generators/graphql-schema.md @@ -20,6 +20,7 @@ sidebar_label: graphql-schema |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/groovy.md b/docs/generators/groovy.md index d5efbbd4ba4..4dd2d48a5c8 100644 --- a/docs/generators/groovy.md +++ b/docs/generators/groovy.md @@ -54,6 +54,7 @@ sidebar_label: groovy |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -71,6 +72,7 @@ sidebar_label: groovy | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-inflector.md b/docs/generators/java-inflector.md index 240a6bb85e2..0b6f2cff5b9 100644 --- a/docs/generators/java-inflector.md +++ b/docs/generators/java-inflector.md @@ -56,6 +56,7 @@ sidebar_label: java-inflector |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -73,6 +74,7 @@ sidebar_label: java-inflector | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-msf4j.md b/docs/generators/java-msf4j.md index 2a7c7484227..ce767ba3394 100644 --- a/docs/generators/java-msf4j.md +++ b/docs/generators/java-msf4j.md @@ -61,6 +61,7 @@ sidebar_label: java-msf4j |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -78,6 +79,7 @@ sidebar_label: java-msf4j | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-pkmst.md b/docs/generators/java-pkmst.md index 360cecdad37..01b1d565aa1 100644 --- a/docs/generators/java-pkmst.md +++ b/docs/generators/java-pkmst.md @@ -63,6 +63,7 @@ sidebar_label: java-pkmst |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -80,6 +81,7 @@ sidebar_label: java-pkmst | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-play-framework.md b/docs/generators/java-play-framework.md index db5a6cce52d..474f2fe1cd2 100644 --- a/docs/generators/java-play-framework.md +++ b/docs/generators/java-play-framework.md @@ -65,6 +65,7 @@ sidebar_label: java-play-framework |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -82,6 +83,7 @@ sidebar_label: java-play-framework | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-undertow-server.md b/docs/generators/java-undertow-server.md index 2975825ef19..ddf5fc8c899 100644 --- a/docs/generators/java-undertow-server.md +++ b/docs/generators/java-undertow-server.md @@ -56,6 +56,7 @@ sidebar_label: java-undertow-server |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -73,6 +74,7 @@ sidebar_label: java-undertow-server | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-vertx-web.md b/docs/generators/java-vertx-web.md index 96c7193b288..fed507c1194 100644 --- a/docs/generators/java-vertx-web.md +++ b/docs/generators/java-vertx-web.md @@ -56,6 +56,7 @@ sidebar_label: java-vertx-web |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -73,6 +74,7 @@ sidebar_label: java-vertx-web | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java-vertx.md b/docs/generators/java-vertx.md index 626eca2911f..24ed9d8eddf 100644 --- a/docs/generators/java-vertx.md +++ b/docs/generators/java-vertx.md @@ -59,6 +59,7 @@ sidebar_label: java-vertx |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -76,6 +77,7 @@ sidebar_label: java-vertx | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/java.md b/docs/generators/java.md index 716c1beb9b5..3f5dc6e9551 100644 --- a/docs/generators/java.md +++ b/docs/generators/java.md @@ -72,6 +72,7 @@ sidebar_label: java |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -89,6 +90,7 @@ sidebar_label: java | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/javascript.md b/docs/generators/javascript.md index 49dabe82ea2..1fabca76b5b 100644 --- a/docs/generators/javascript.md +++ b/docs/generators/javascript.md @@ -42,6 +42,7 @@ sidebar_label: javascript |array|Array| |list|Array| |map|Object| +|set|Array| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-cxf-cdi.md b/docs/generators/jaxrs-cxf-cdi.md index d42714ad38e..41fd45fd373 100644 --- a/docs/generators/jaxrs-cxf-cdi.md +++ b/docs/generators/jaxrs-cxf-cdi.md @@ -67,6 +67,7 @@ sidebar_label: jaxrs-cxf-cdi |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.LocalDate| |LocalDateTime|org.joda.time.*| @@ -84,6 +85,7 @@ sidebar_label: jaxrs-cxf-cdi | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-cxf-client.md b/docs/generators/jaxrs-cxf-client.md index cea106975e6..fa1460bdb30 100644 --- a/docs/generators/jaxrs-cxf-client.md +++ b/docs/generators/jaxrs-cxf-client.md @@ -60,6 +60,7 @@ sidebar_label: jaxrs-cxf-client |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.LocalDate| |LocalDateTime|org.joda.time.*| @@ -77,6 +78,7 @@ sidebar_label: jaxrs-cxf-client | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-cxf-extended.md b/docs/generators/jaxrs-cxf-extended.md index b514e1d4b0f..192f1998a1c 100644 --- a/docs/generators/jaxrs-cxf-extended.md +++ b/docs/generators/jaxrs-cxf-extended.md @@ -82,6 +82,7 @@ sidebar_label: jaxrs-cxf-extended |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.LocalDate| |LocalDateTime|org.joda.time.*| @@ -99,6 +100,7 @@ sidebar_label: jaxrs-cxf-extended | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-cxf.md b/docs/generators/jaxrs-cxf.md index b65f8d844bc..2254f2ac3a8 100644 --- a/docs/generators/jaxrs-cxf.md +++ b/docs/generators/jaxrs-cxf.md @@ -77,6 +77,7 @@ sidebar_label: jaxrs-cxf |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.LocalDate| |LocalDateTime|org.joda.time.*| @@ -94,6 +95,7 @@ sidebar_label: jaxrs-cxf | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-jersey.md b/docs/generators/jaxrs-jersey.md index 9618f052ab6..23a9b9c7d76 100644 --- a/docs/generators/jaxrs-jersey.md +++ b/docs/generators/jaxrs-jersey.md @@ -63,6 +63,7 @@ sidebar_label: jaxrs-jersey |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -80,6 +81,7 @@ sidebar_label: jaxrs-jersey | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-resteasy-eap.md b/docs/generators/jaxrs-resteasy-eap.md index 8961c6da03d..b243da65f08 100644 --- a/docs/generators/jaxrs-resteasy-eap.md +++ b/docs/generators/jaxrs-resteasy-eap.md @@ -62,6 +62,7 @@ sidebar_label: jaxrs-resteasy-eap |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -79,6 +80,7 @@ sidebar_label: jaxrs-resteasy-eap | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-resteasy.md b/docs/generators/jaxrs-resteasy.md index bcff6b2d13a..f65d96401bc 100644 --- a/docs/generators/jaxrs-resteasy.md +++ b/docs/generators/jaxrs-resteasy.md @@ -61,6 +61,7 @@ sidebar_label: jaxrs-resteasy |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -78,6 +79,7 @@ sidebar_label: jaxrs-resteasy | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jaxrs-spec.md b/docs/generators/jaxrs-spec.md index 3deb5c4260a..31d624bca53 100644 --- a/docs/generators/jaxrs-spec.md +++ b/docs/generators/jaxrs-spec.md @@ -67,6 +67,7 @@ sidebar_label: jaxrs-spec |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.LocalDate| |LocalDateTime|org.joda.time.*| @@ -84,6 +85,7 @@ sidebar_label: jaxrs-spec | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/docs/generators/jmeter.md b/docs/generators/jmeter.md index 16825e5dee4..c3a201424d6 100644 --- a/docs/generators/jmeter.md +++ b/docs/generators/jmeter.md @@ -23,6 +23,7 @@ sidebar_label: jmeter |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/k6.md b/docs/generators/k6.md index 7d2b09f46eb..7e53e811f52 100644 --- a/docs/generators/k6.md +++ b/docs/generators/k6.md @@ -23,6 +23,7 @@ sidebar_label: k6 |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/markdown.md b/docs/generators/markdown.md index fef2cddc340..8e3566df531 100644 --- a/docs/generators/markdown.md +++ b/docs/generators/markdown.md @@ -23,6 +23,7 @@ sidebar_label: markdown |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/nim.md b/docs/generators/nim.md index 5b72fb3575a..6a36b277593 100644 --- a/docs/generators/nim.md +++ b/docs/generators/nim.md @@ -23,6 +23,7 @@ sidebar_label: nim |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/nodejs-express-server.md b/docs/generators/nodejs-express-server.md index 5ded08347aa..5c5b3e44a5f 100644 --- a/docs/generators/nodejs-express-server.md +++ b/docs/generators/nodejs-express-server.md @@ -24,6 +24,7 @@ sidebar_label: nodejs-express-server |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/nodejs-server-deprecated.md b/docs/generators/nodejs-server-deprecated.md index 981b7b9fffe..74b494ef0d2 100644 --- a/docs/generators/nodejs-server-deprecated.md +++ b/docs/generators/nodejs-server-deprecated.md @@ -26,6 +26,7 @@ sidebar_label: nodejs-server-deprecated |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/ocaml.md b/docs/generators/ocaml.md index 403a8eff9e7..6dcc9dd7ae5 100644 --- a/docs/generators/ocaml.md +++ b/docs/generators/ocaml.md @@ -22,6 +22,7 @@ sidebar_label: ocaml |Date|java.util.Date| |DateTime|org.joda.time.*| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/openapi-yaml.md b/docs/generators/openapi-yaml.md index 3fde0dfd3bb..704efea2209 100644 --- a/docs/generators/openapi-yaml.md +++ b/docs/generators/openapi-yaml.md @@ -24,6 +24,7 @@ sidebar_label: openapi-yaml |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/openapi.md b/docs/generators/openapi.md index fe7fe0cfa50..e2a97f80bb1 100644 --- a/docs/generators/openapi.md +++ b/docs/generators/openapi.md @@ -23,6 +23,7 @@ sidebar_label: openapi |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/php-laravel.md b/docs/generators/php-laravel.md index f6447b33d5c..cc5e5f1e1b5 100644 --- a/docs/generators/php-laravel.md +++ b/docs/generators/php-laravel.md @@ -30,6 +30,7 @@ sidebar_label: php-laravel |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/php-lumen.md b/docs/generators/php-lumen.md index 33efe2cc794..d85b094b070 100644 --- a/docs/generators/php-lumen.md +++ b/docs/generators/php-lumen.md @@ -30,6 +30,7 @@ sidebar_label: php-lumen |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/php-silex-deprecated.md b/docs/generators/php-silex-deprecated.md index df20864fb93..1a18db41c36 100644 --- a/docs/generators/php-silex-deprecated.md +++ b/docs/generators/php-silex-deprecated.md @@ -23,6 +23,7 @@ sidebar_label: php-silex-deprecated |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/php-ze-ph.md b/docs/generators/php-ze-ph.md index b6852f1087d..04fd2bda5b5 100644 --- a/docs/generators/php-ze-ph.md +++ b/docs/generators/php-ze-ph.md @@ -30,6 +30,7 @@ sidebar_label: php-ze-ph |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/plantuml.md b/docs/generators/plantuml.md index 9f64e821834..d559ea7ebb3 100644 --- a/docs/generators/plantuml.md +++ b/docs/generators/plantuml.md @@ -23,6 +23,7 @@ sidebar_label: plantuml |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/powershell-experimental.md b/docs/generators/powershell-experimental.md index bc3c8be474f..8c4a8ab5a46 100644 --- a/docs/generators/powershell-experimental.md +++ b/docs/generators/powershell-experimental.md @@ -23,6 +23,7 @@ sidebar_label: powershell-experimental |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/powershell.md b/docs/generators/powershell.md index 8d395f0f7ba..2ce5aad8675 100644 --- a/docs/generators/powershell.md +++ b/docs/generators/powershell.md @@ -23,6 +23,7 @@ sidebar_label: powershell |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/python-aiohttp.md b/docs/generators/python-aiohttp.md index 522e75b3866..288f4e1f8b9 100644 --- a/docs/generators/python-aiohttp.md +++ b/docs/generators/python-aiohttp.md @@ -31,6 +31,7 @@ sidebar_label: python-aiohttp |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/python-blueplanet.md b/docs/generators/python-blueplanet.md index 2192715c985..c0ec66d38c1 100644 --- a/docs/generators/python-blueplanet.md +++ b/docs/generators/python-blueplanet.md @@ -31,6 +31,7 @@ sidebar_label: python-blueplanet |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/python-flask.md b/docs/generators/python-flask.md index 8a230e5fbad..cc7c312d982 100644 --- a/docs/generators/python-flask.md +++ b/docs/generators/python-flask.md @@ -31,6 +31,7 @@ sidebar_label: python-flask |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/ruby-on-rails.md b/docs/generators/ruby-on-rails.md index 897c2d977f9..a6c46a7365c 100644 --- a/docs/generators/ruby-on-rails.md +++ b/docs/generators/ruby-on-rails.md @@ -18,6 +18,7 @@ sidebar_label: ruby-on-rails |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/ruby-sinatra.md b/docs/generators/ruby-sinatra.md index d6f9070c757..d1615f145c3 100644 --- a/docs/generators/ruby-sinatra.md +++ b/docs/generators/ruby-sinatra.md @@ -17,6 +17,7 @@ sidebar_label: ruby-sinatra |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/rust.md b/docs/generators/rust.md index cea41866744..b93f900f3b1 100644 --- a/docs/generators/rust.md +++ b/docs/generators/rust.md @@ -22,6 +22,7 @@ sidebar_label: rust |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| diff --git a/docs/generators/spring.md b/docs/generators/spring.md index 6116bd3f430..ed4b48bc018 100644 --- a/docs/generators/spring.md +++ b/docs/generators/spring.md @@ -78,6 +78,7 @@ sidebar_label: spring |DateTime|org.joda.time.*| |File|java.io.File| |HashMap|java.util.HashMap| +|LinkedHashSet|java.util.LinkedHashSet| |List|java.util.*| |LocalDate|org.joda.time.*| |LocalDateTime|org.joda.time.*| @@ -95,6 +96,7 @@ sidebar_label: spring | ---------- | --------------- | |array|ArrayList| |map|HashMap| +|set|LinkedHashSet| ## LANGUAGE PRIMITIVES diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java index 117eb9a1ed3..db04ec4ba7c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java @@ -29,7 +29,7 @@ public class CodegenOperation { isListContainer, isMultipart, hasMore = true, isResponseBinary = false, isResponseFile = false, hasReference = false, isRestfulIndex, isRestfulShow, isRestfulCreate, isRestfulUpdate, isRestfulDestroy, - isRestful, isDeprecated, isCallbackRequest; + isRestful, isDeprecated, isCallbackRequest, uniqueItems; public String path, operationId, returnType, httpMethod, returnBaseType, returnContainer, summary, unescapedNotes, notes, baseName, defaultResponse; public CodegenDiscriminator discriminator; @@ -270,6 +270,7 @@ public class CodegenOperation { sb.append(", isRestful=").append(isRestful); sb.append(", isDeprecated=").append(isDeprecated); sb.append(", isCallbackRequest=").append(isCallbackRequest); + sb.append(", uniqueItems='").append(uniqueItems); sb.append(", path='").append(path).append('\''); sb.append(", operationId='").append(operationId).append('\''); sb.append(", returnType='").append(returnType).append('\''); @@ -343,6 +344,7 @@ public class CodegenOperation { isRestful == that.isRestful && isDeprecated == that.isDeprecated && isCallbackRequest == that.isCallbackRequest && + uniqueItems == that.uniqueItems && Objects.equals(responseHeaders, that.responseHeaders) && Objects.equals(path, that.path) && Objects.equals(operationId, that.operationId) && @@ -393,9 +395,9 @@ public class CodegenOperation { hasRequiredParams, returnTypeIsPrimitive, returnSimpleType, subresourceOperation, isMapContainer, isListContainer, isMultipart, hasMore, isResponseBinary, isResponseFile, hasReference, isRestfulIndex, isRestfulShow, isRestfulCreate, isRestfulUpdate, isRestfulDestroy, isRestful, isDeprecated, - isCallbackRequest, path, operationId, returnType, httpMethod, returnBaseType, returnContainer, - summary, unescapedNotes, notes, baseName, defaultResponse, discriminator, consumes, produces, - prioritizedContentTypes, servers, bodyParam, allParams, bodyParams, pathParams, queryParams, + isCallbackRequest, uniqueItems, path, operationId, returnType, httpMethod, returnBaseType, + returnContainer, summary, unescapedNotes, notes, baseName, defaultResponse, discriminator, consumes, + produces, prioritizedContentTypes, servers, bodyParam, allParams, bodyParams, pathParams, queryParams, headerParams, formParams, cookieParams, requiredParams, optionalParams, authMethods, tags, responses, callbacks, imports, examples, requestBodyExamples, externalDocs, vendorExtensions, nickname, operationIdOriginal, operationIdLowerCase, operationIdCamelCase, operationIdSnakeCase); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 3f438659c0c..08894cd58a4 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -1378,8 +1378,10 @@ public class DefaultCodegen implements CodegenConfig { typeMapping = new HashMap(); typeMapping.put("array", "List"); + typeMapping.put("set", "Set"); typeMapping.put("map", "Map"); typeMapping.put("List", "List"); + typeMapping.put("Set", "Set"); typeMapping.put("boolean", "Boolean"); typeMapping.put("string", "String"); typeMapping.put("int", "Integer"); @@ -1418,6 +1420,7 @@ public class DefaultCodegen implements CodegenConfig { importMapping.put("ArrayList", "java.util.ArrayList"); importMapping.put("List", "java.util.*"); importMapping.put("Set", "java.util.*"); + importMapping.put("LinkedHashSet", "java.util.LinkedHashSet"); importMapping.put("DateTime", "org.joda.time.*"); importMapping.put("LocalDateTime", "org.joda.time.*"); importMapping.put("LocalDate", "org.joda.time.*"); @@ -1588,7 +1591,13 @@ public class DefaultCodegen implements CodegenConfig { } else if (ModelUtils.isArraySchema(schema)) { ArraySchema arraySchema = (ArraySchema) schema; String inner = getSchemaType(getSchemaItems(arraySchema)); - return instantiationTypes.get("array") + "<" + inner + ">"; + String parentType; + if (ModelUtils.isSet(schema)) { + parentType = "set"; + } else { + parentType = "array"; + } + return instantiationTypes.get(parentType) + "<" + inner + ">"; } else { return null; } @@ -1979,7 +1988,11 @@ public class DefaultCodegen implements CodegenConfig { } else if (ModelUtils.isMapSchema(schema)) { return "map"; } else if (ModelUtils.isArraySchema(schema)) { - return "array"; + if (ModelUtils.isSet(schema)) { + return "set"; + } else { + return "array"; + } } else if (ModelUtils.isUUIDSchema(schema)) { return "UUID"; } else if (ModelUtils.isURISchema(schema)) { @@ -3110,7 +3123,11 @@ public class DefaultCodegen implements CodegenConfig { if (ModelUtils.isArraySchema(p)) { property.isContainer = true; property.isListContainer = true; - property.containerType = "array"; + if (ModelUtils.isSet(p)) { + property.containerType = "set"; + } else { + property.containerType = "array"; + } property.baseType = getSchemaType(p); if (p.getXml() != null) { property.isXmlWrapped = p.getXml().getWrapped() == null ? false : p.getXml().getWrapped(); @@ -3430,6 +3447,8 @@ public class DefaultCodegen implements CodegenConfig { op.isListContainer = true; } else if ("array".equalsIgnoreCase(cm.containerType)) { op.isListContainer = true; + } else if ("set".equalsIgnoreCase(cm.containerType)) { + op.isListContainer = true; } } else { op.returnSimpleType = true; @@ -3521,6 +3540,10 @@ public class DefaultCodegen implements CodegenConfig { !languageSpecificPrimitives.contains(r.baseType)) { imports.add(r.baseType); } + if ("set".equals(r.containerType) && typeMapping.containsKey(r.containerType)) { + op.uniqueItems = true; + imports.add(typeMapping.get(r.containerType)); + } r.isDefault = response == methodResponse; op.responses.add(r); if (Boolean.TRUE.equals(r.isBinary) && Boolean.TRUE.equals(r.isDefault)) { @@ -3868,7 +3891,9 @@ public class DefaultCodegen implements CodegenConfig { r.simpleType = false; r.containerType = cp.containerType; r.isMapContainer = "map".equals(cp.containerType); - r.isListContainer = "list".equalsIgnoreCase(cp.containerType) || "array".equalsIgnoreCase(cp.containerType); + r.isListContainer = "list".equalsIgnoreCase(cp.containerType) || + "array".equalsIgnoreCase(cp.containerType) || + "set".equalsIgnoreCase(cp.containerType); } else { r.simpleType = true; } @@ -4099,6 +4124,9 @@ public class DefaultCodegen implements CodegenConfig { if (ModelUtils.isObjectSchema(parameterSchema)) { codegenProperty.complexType = codegenParameter.dataType; } + if (ModelUtils.isSet(parameterSchema)) { + imports.add(codegenProperty.baseType); + } codegenParameter.dataFormat = codegenProperty.dataFormat; codegenParameter.required = codegenProperty.required; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index 2ba884ebb86..2223aa84591 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -18,6 +18,7 @@ package org.openapitools.codegen.languages; import com.google.common.base.Strings; + import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.Operation; import io.swagger.v3.oas.models.PathItem; @@ -166,6 +167,7 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code "byte[]") ); instantiationTypes.put("array", "ArrayList"); + instantiationTypes.put("set", "LinkedHashSet"); instantiationTypes.put("map", "HashMap"); typeMapping.put("date", "Date"); typeMapping.put("file", "File"); @@ -431,9 +433,11 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code additionalProperties.put("modelDocPath", modelDocPath); importMapping.put("List", "java.util.List"); + importMapping.put("Set", "java.util.Set"); if (fullJavaUtil) { typeMapping.put("array", "java.util.List"); + typeMapping.put("set", "java.util.Set"); typeMapping.put("map", "java.util.Map"); typeMapping.put("DateTime", "java.util.Date"); typeMapping.put("UUID", "java.util.UUID"); @@ -448,6 +452,7 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code importMapping.remove("DateTime"); importMapping.remove("UUID"); instantiationTypes.put("array", "java.util.ArrayList"); + instantiationTypes.put("set", "java.util.LinkedHashSet"); instantiationTypes.put("map", "java.util.HashMap"); } @@ -779,10 +784,18 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code schema = ModelUtils.getReferencedSchema(this.openAPI, schema); if (ModelUtils.isArraySchema(schema)) { final String pattern; - if (fullJavaUtil) { - pattern = "new java.util.ArrayList<%s>()"; + if (ModelUtils.isSet(schema)) { + if (fullJavaUtil) { + pattern = "new java.util.LinkedHashSet<%s>()"; + } else { + pattern = "new LinkedHashSet<%s>()"; + } } else { - pattern = "new ArrayList<%s>()"; + if (fullJavaUtil) { + pattern = "new java.util.ArrayList<%s>()"; + } else { + pattern = "new ArrayList<%s>()"; + } } Schema items = getSchemaItems((ArraySchema) schema); @@ -1041,6 +1054,8 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code if (!fullJavaUtil) { if ("array".equals(property.containerType)) { model.imports.add("ArrayList"); + } else if ("set".equals(property.containerType)) { + model.imports.add("LinkedHashSet"); } else if ("map".equals(property.containerType)) { model.imports.add("HashMap"); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java index 45ffa3b36b7..c3edecbfbde 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java @@ -201,6 +201,8 @@ public abstract class AbstractJavaJAXRSServerCodegen extends AbstractJavaCodegen if ("array".equals(resp.containerType)) { resp.containerType = "List"; + } else if ("set".equals(resp.containerType)) { + resp.containerType = "Set"; } else if ("map".equals(resp.containerType)) { resp.containerType = "Map"; } @@ -216,6 +218,8 @@ public abstract class AbstractJavaJAXRSServerCodegen extends AbstractJavaCodegen if ("array".equals(operation.returnContainer)) { operation.returnContainer = "List"; + } else if ("set".equals(operation.returnContainer)) { + operation.returnContainer = "Set"; } else if ("map".equals(operation.returnContainer)) { operation.returnContainer = "Map"; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractRubyCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractRubyCodegen.java index c293ff84eec..96758042a6f 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractRubyCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractRubyCodegen.java @@ -77,6 +77,7 @@ abstract public class AbstractRubyCodegen extends DefaultCodegen implements Code typeMapping.put("date", "Date"); typeMapping.put("DateTime", "DateTime"); typeMapping.put("array", "Array"); + typeMapping.put("set", "Array"); typeMapping.put("List", "Array"); typeMapping.put("map", "Hash"); typeMapping.put("object", "Object"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java index 6f487e0d475..103ac17700c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java @@ -741,7 +741,8 @@ public class ElixirClientCodegen extends DefaultCodegen implements CodegenConfig sb.append(returnBaseType); sb.append(".t"); } else { - if (returnContainer.equals("array")) { + if (returnContainer.equals("array") || + returnContainer.equals("set")) { sb.append("list("); if (!returnTypeIsPrimitive) { sb.append(moduleName); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java index 2beed8ba2f4..1c1bea5403b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java @@ -139,10 +139,12 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo defaultIncludes = new HashSet(languageSpecificPrimitives); instantiationTypes.put("array", "Array"); + instantiationTypes.put("set", "Array"); instantiationTypes.put("list", "Array"); instantiationTypes.put("map", "Object"); typeMapping.clear(); typeMapping.put("array", "Array"); + typeMapping.put("set", "Array"); typeMapping.put("map", "Object"); typeMapping.put("List", "Array"); typeMapping.put("boolean", "Boolean"); @@ -923,7 +925,7 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo private String getJSDocType(CodegenModel cm, CodegenProperty cp) { if (Boolean.TRUE.equals(cp.isContainer)) { - if (cp.containerType.equals("array")) + if (cp.containerType.equals("array") || cp.containerType.equals("set")) return "Array.<" + getJSDocType(cm, cp.items) + ">"; else if (cp.containerType.equals("map")) return "Object."; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java index 334f9579aed..790dbd92322 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java @@ -155,6 +155,7 @@ public class MysqlSchemaCodegen extends DefaultCodegen implements CodegenConfig // https://dev.mysql.com/doc/refman/8.0/en/data-types.html typeMapping.put("array", "JSON"); + typeMapping.put("set", "JSON"); typeMapping.put("map", "JSON"); typeMapping.put("List", "JSON"); typeMapping.put("boolean", "BOOL"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java index 8eef21d0e89..f96af82dc70 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java @@ -131,6 +131,7 @@ public class PerlClientCodegen extends DefaultCodegen implements CodegenConfig { typeMapping.put("DateTime", "DateTime"); typeMapping.put("password", "string"); typeMapping.put("array", "ARRAY"); + typeMapping.put("set", "ARRAY"); typeMapping.put("map", "HASH"); typeMapping.put("object", "object"); typeMapping.put("binary", "string"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java index a7e186c3735..ef92f7ce0db 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java @@ -128,6 +128,7 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig typeMapping.put("long", "int"); typeMapping.put("double", "float"); typeMapping.put("array", "list"); + typeMapping.put("set", "list"); typeMapping.put("map", "dict"); typeMapping.put("boolean", "bool"); typeMapping.put("string", "str"); diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/returnTypes.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/returnTypes.mustache index c8f7a56938a..873e4fdc664 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/returnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/returnTypes.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/returnTypes.mustache index c8f7a56938a..873e4fdc664 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/returnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/exampleReturnTypes.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/exampleReturnTypes.mustache index 395e3889c20..e406c368dfd 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/exampleReturnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/exampleReturnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApi.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApi.mustache index 1938fdf113d..ea72f30b32a 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApi.mustache @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; {{#useBeanValidation}} import javax.validation.constraints.*; diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApiController.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApiController.mustache index c3c2158499b..f93c7977973 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApiController.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/newApiController.mustache @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -102,7 +103,7 @@ public class {{classname}}Controller extends Controller { } {{/required}} List {{paramName}}List = OpenAPIUtils.parametersToList("{{collectionFormat}}", {{paramName}}Array); - {{{dataType}}} {{paramName}} = new Array{{{dataType}}}(); + {{{dataType}}} {{paramName}} = new {{#uniqueItems}}LinkedHashSet{{/uniqueItems}}{{^uniqueItems}}ArrayList{{/uniqueItems}}<>(); for (String curParam : {{paramName}}List) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -143,7 +144,7 @@ public class {{classname}}Controller extends Controller { } {{/required}} List {{paramName}}List = OpenAPIUtils.parametersToList("{{collectionFormat}}", {{paramName}}Array); - {{{dataType}}} {{paramName}} = new Array{{{dataType}}}(); + {{{dataType}}} {{paramName}} = new {{#uniqueItems}}LinkedHashSet{{/uniqueItems}}{{^uniqueItems}}ArrayList{{/uniqueItems}}<>(); for (String curParam : {{paramName}}List) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -176,7 +177,7 @@ public class {{classname}}Controller extends Controller { } {{/required}} List {{paramName}}List = OpenAPIUtils.parametersToList("{{collectionFormat}}", {{paramName}}Array); - {{{dataType}}} {{paramName}} = new Array{{{dataType}}}(); + {{{dataType}}} {{paramName}} = new {{#uniqueItems}}LinkedHashSet{{/uniqueItems}}{{^uniqueItems}}ArrayList{{/uniqueItems}}<>(); for (String curParam : {{paramName}}List) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypes.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypes.mustache index dbc2e613707..2fc81df496f 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypes.mustache @@ -1 +1 @@ -{{#returnType}}{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}}{{/returnType}}{{^returnType}}void{{/returnType}} \ No newline at end of file +{{#returnType}}{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}}{{/returnType}}{{^returnType}}void{{/returnType}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoid.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoid.mustache index aba24782e7e..fb106adb635 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoid.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoid.mustache @@ -1 +1 @@ -{{#returnType}}{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}}{{/returnType}} \ No newline at end of file +{{#returnType}}{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}}{{/returnType}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoidNoAbstract.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoidNoAbstract.mustache index 39f2c32c4d1..49b189ace26 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoidNoAbstract.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/returnTypesNoVoidNoAbstract.mustache @@ -1 +1 @@ -{{#returnType}}{{#returnContainer}}{{#isMapContainer}}HashMap{{/isMapContainer}}{{#isListContainer}}ArrayList<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}}{{/returnType}} \ No newline at end of file +{{#returnType}}{{#returnContainer}}{{#isMapContainer}}HashMap{{/isMapContainer}}{{#isListContainer}}{{#uniqueItems}}LinkedHashSet{{/uniqueItems}}{{^uniqueItems}}ArrayList{{/uniqueItems}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}}{{/returnType}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/exampleReturnTypes.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/exampleReturnTypes.mustache index 0749b0ca7e6..985bc9d2153 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/exampleReturnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/exampleReturnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/returnTypes.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/returnTypes.mustache index bd6283296da..27f37ca8ef2 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/returnTypes.mustache @@ -1 +1 @@ -{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{#reactive}}Flux{{/reactive}}{{^reactive}}List{{/reactive}}<{{{returnType}}}>{{/isListContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{#reactive}}Flux{{/reactive}}{{^reactive}}{{{returnContainer}}}{{/reactive}}<{{{returnType}}}>{{/isListContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-msf4j-server/returnTypes.mustache b/modules/openapi-generator/src/main/resources/java-msf4j-server/returnTypes.mustache index c8f7a56938a..873e4fdc664 100644 --- a/modules/openapi-generator/src/main/resources/java-msf4j-server/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/java-msf4j-server/returnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-pkmst/exampleReturnTypes.mustache b/modules/openapi-generator/src/main/resources/java-pkmst/exampleReturnTypes.mustache index 395e3889c20..e406c368dfd 100644 --- a/modules/openapi-generator/src/main/resources/java-pkmst/exampleReturnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/java-pkmst/exampleReturnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-pkmst/returnTypes.mustache b/modules/openapi-generator/src/main/resources/java-pkmst/returnTypes.mustache index c8f7a56938a..873e4fdc664 100644 --- a/modules/openapi-generator/src/main/resources/java-pkmst/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/java-pkmst/returnTypes.mustache @@ -1 +1 @@ -{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}List<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#returnContainer}}{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{{returnContainer}}}<{{{returnType}}}>{{/isListContainer}}{{/returnContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/returnTypes.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/returnTypes.mustache index 498e0aab4fd..5fa33ef700e 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/returnTypes.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/returnTypes.mustache @@ -1 +1 @@ -{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{#reactive}}Flow{{/reactive}}{{^reactive}}List{{/reactive}}<{{{returnType}}}>{{/isListContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file +{{#isMapContainer}}Map{{/isMapContainer}}{{#isListContainer}}{{#reactive}}Flow{{/reactive}}{{^reactive}}{{{returnContainer}}}{{/reactive}}<{{{returnType}}}>{{/isListContainer}}{{^returnContainer}}{{{returnType}}}{{/returnContainer}} \ No newline at end of file diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java index e18dff76f81..0a694cffd6b 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java @@ -446,6 +446,18 @@ public class AbstractJavaCodegenTest { defaultValue = codegen.getTypeDeclaration(schema); Assert.assertEquals(defaultValue, "List"); + // Create an array schema with item type set to the array alias + schema = new ArraySchema().items(new Schema().$ref("#/components/schemas/NestedArray")); + schema.setUniqueItems(true); + + ModelUtils.setGenerateAliasAsModel(false); + defaultValue = codegen.getTypeDeclaration(schema); + Assert.assertEquals(defaultValue, "Set>"); + + ModelUtils.setGenerateAliasAsModel(true); + defaultValue = codegen.getTypeDeclaration(schema); + Assert.assertEquals(defaultValue, "Set"); + // Create a map schema with additionalProperties type set to array alias schema = new MapSchema().additionalProperties(new Schema().$ref("#/components/schemas/NestedArray")); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaModelTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaModelTest.java index 1d01d7d2d6e..821521bf42d 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaModelTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/JavaModelTest.java @@ -110,11 +110,11 @@ public class JavaModelTest { @Test(description = "convert a model with list property") public void listPropertyTest() { final Schema schema = new Schema() - .description("a sample model") - .addProperties("id", new IntegerSchema().format(SchemaTypeUtil.INTEGER64_FORMAT)) - .addProperties("urls", new ArraySchema() - .items(new StringSchema())) - .addRequiredItem("id"); + .description("a sample model") + .addProperties("id", new IntegerSchema().format(SchemaTypeUtil.INTEGER64_FORMAT)) + .addProperties("urls", new ArraySchema() + .items(new StringSchema())) + .addRequiredItem("id"); final DefaultCodegen codegen = new JavaClientCodegen(); OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", schema); codegen.setOpenAPI(openAPI); @@ -138,6 +138,38 @@ public class JavaModelTest { Assert.assertTrue(property.isContainer); } + @Test(description = "convert a model with set property") + public void setPropertyTest() { + final Schema schema = new Schema() + .description("a sample model") + .addProperties("id", new IntegerSchema().format(SchemaTypeUtil.INTEGER64_FORMAT)) + .addProperties("urls", new ArraySchema() + .items(new StringSchema()) + .uniqueItems(true)) + .addRequiredItem("id"); + final DefaultCodegen codegen = new JavaClientCodegen(); + OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", schema); + codegen.setOpenAPI(openAPI); + final CodegenModel cm = codegen.fromModel("sample", schema); + + Assert.assertEquals(cm.name, "sample"); + Assert.assertEquals(cm.classname, "Sample"); + Assert.assertEquals(cm.description, "a sample model"); + Assert.assertEquals(cm.vars.size(), 2); + + final CodegenProperty property = cm.vars.get(1); + Assert.assertEquals(property.baseName, "urls"); + Assert.assertEquals(property.getter, "getUrls"); + Assert.assertEquals(property.setter, "setUrls"); + Assert.assertEquals(property.dataType, "Set"); + Assert.assertEquals(property.name, "urls"); + Assert.assertEquals(property.defaultValue, "new LinkedHashSet()"); + Assert.assertEquals(property.baseType, "Set"); + Assert.assertEquals(property.containerType, "set"); + Assert.assertFalse(property.required); + Assert.assertTrue(property.isContainer); + } + @Test(description = "convert a model with a map property") public void mapPropertyTest() { final Schema schema = new Schema() @@ -401,6 +433,27 @@ public class JavaModelTest { Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("ApiModel", "List", "ArrayList", "Children")).size(), 4); } + @Test(description = "convert a set model") + public void setModelTest() { + final Schema schema = new ArraySchema() + .items(new Schema().name("elobjeto").$ref("#/components/schemas/Children")) + .uniqueItems(true) + .name("arraySchema") + .description("an array model"); + final DefaultCodegen codegen = new JavaClientCodegen(); + OpenAPI openAPI = TestUtils.createOpenAPIWithOneSchema("sample", schema); + codegen.setOpenAPI(openAPI); + final CodegenModel cm = codegen.fromModel("sample", schema); + + Assert.assertEquals(cm.name, "sample"); + Assert.assertEquals(cm.classname, "Sample"); + Assert.assertEquals(cm.description, "an array model"); + Assert.assertEquals(cm.vars.size(), 0); + Assert.assertEquals(cm.parent, "LinkedHashSet"); + Assert.assertEquals(cm.imports.size(), 4); + Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("ApiModel", "Set", "LinkedHashSet", "Children")).size(), 4); + } + @Test(description = "convert a map model") public void mapModelTest() { final Schema schema = new Schema() diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/jaxrs/JavaJAXRSSpecServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/jaxrs/JavaJAXRSSpecServerCodegenTest.java index 7b26cd3bfdf..cd979e1bb1c 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/jaxrs/JavaJAXRSSpecServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/jaxrs/JavaJAXRSSpecServerCodegenTest.java @@ -1,8 +1,14 @@ package org.openapitools.codegen.java.jaxrs; +import io.swagger.parser.OpenAPIParser; import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.Operation; +import io.swagger.v3.oas.models.media.ArraySchema; +import io.swagger.v3.oas.models.media.Content; +import io.swagger.v3.oas.models.media.MediaType; +import io.swagger.v3.oas.models.responses.ApiResponse; import io.swagger.v3.oas.models.servers.Server; +import io.swagger.v3.parser.core.models.ParseOptions; import org.openapitools.codegen.ClientOptInput; import org.openapitools.codegen.CodegenConstants; @@ -13,17 +19,21 @@ import org.openapitools.codegen.config.CodegenConfigurator; import org.openapitools.codegen.languages.AbstractJavaJAXRSServerCodegen; import org.openapitools.codegen.languages.JavaClientCodegen; import org.openapitools.codegen.languages.JavaJAXRSSpecServerCodegen; +import org.openapitools.codegen.languages.features.CXFServerFeatures; import org.testng.Assert; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import java.io.File; +import java.io.IOException; import java.nio.file.Files; import java.util.HashMap; import java.util.List; import java.util.Map; +import static org.openapitools.codegen.TestUtils.assertFileContains; import static org.openapitools.codegen.TestUtils.validateJavaSourceFiles; +import static org.testng.Assert.assertTrue; /** * Unit-Test for {@link org.openapitools.codegen.languages.JavaJAXRSSpecServerCodegen}. @@ -123,7 +133,7 @@ public class JavaJAXRSSpecServerCodegenTest extends JavaJaxrsBaseTest { codegen.addOperationToGroup("Primaryresource", "/", operation, codegenOperation, operationList); Assert.assertEquals(operationList.size(), 1); - Assert.assertTrue(operationList.containsKey("")); + assertTrue(operationList.containsKey("")); Assert.assertEquals(codegenOperation.baseName, "Primaryresource"); } @@ -141,7 +151,7 @@ public class JavaJAXRSSpecServerCodegenTest extends JavaJaxrsBaseTest { codegen.addOperationToGroup("Primaryresource", "/{uuid}", operation, codegenOperation, operationList); Assert.assertEquals(operationList.size(), 1); - Assert.assertTrue(operationList.containsKey("")); + assertTrue(operationList.containsKey("")); Assert.assertEquals(codegenOperation.baseName, "Primaryresource"); } @@ -161,7 +171,7 @@ public class JavaJAXRSSpecServerCodegenTest extends JavaJaxrsBaseTest { Assert.assertEquals(codegenOperation.baseName, "subresource"); Assert.assertEquals(operationList.size(), 1); - Assert.assertTrue(operationList.containsKey("subresource")); + assertTrue(operationList.containsKey("subresource")); } /** @@ -312,4 +322,55 @@ public class JavaJAXRSSpecServerCodegenTest extends JavaJaxrsBaseTest { output.deleteOnExit(); } + + @Test + public void addsImportForSetArgument() throws IOException { + File output = Files.createTempDirectory("test").toFile().getCanonicalFile(); + output.deleteOnExit(); + String outputPath = output.getAbsolutePath().replace('\\', '/'); + + OpenAPI openAPI = new OpenAPIParser() + .readLocation("src/test/resources/3_0/arrayParameter.yaml", null, new ParseOptions()).getOpenAPI(); + + openAPI.getComponents().getParameters().get("operationsQueryParam").setSchema(new ArraySchema().uniqueItems(true)); + codegen.setOutputDir(output.getAbsolutePath()); + + codegen.additionalProperties().put(CXFServerFeatures.LOAD_TEST_DATA_FROM_FILE, "true"); + + ClientOptInput input = new ClientOptInput() + .openAPI(openAPI) + .config(codegen); + + MockDefaultGenerator generator = new MockDefaultGenerator(); + generator.opts(input).generate(); + + String path = outputPath + "/src/gen/java/org/openapitools/api/ExamplesApi.java"; + + assertFileContains(generator, path, "\nimport java.util.Set;\n"); + } + + @Test + public void addsImportForSetResponse() throws IOException { + File output = Files.createTempDirectory("test").toFile().getCanonicalFile(); + output.deleteOnExit(); + String outputPath = output.getAbsolutePath().replace('\\', '/'); + + OpenAPI openAPI = new OpenAPIParser() + .readLocation("src/test/resources/3_0/setResponse.yaml", null, new ParseOptions()).getOpenAPI(); + + codegen.setOutputDir(output.getAbsolutePath()); + + codegen.additionalProperties().put(CXFServerFeatures.LOAD_TEST_DATA_FROM_FILE, "true"); + + ClientOptInput input = new ClientOptInput() + .openAPI(openAPI) + .config(codegen); + + MockDefaultGenerator generator = new MockDefaultGenerator(); + generator.opts(input).generate(); + + String path = outputPath + "/src/gen/java/org/openapitools/api/ExamplesApi.java"; + + assertFileContains(generator, path, "\nimport java.util.Set;\n"); + } } diff --git a/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml b/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml index e21b8fb7d25..27083db4ad7 100644 --- a/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml +++ b/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml @@ -132,6 +132,7 @@ paths: description: Tags to filter by required: true type: array + uniqueItems: true items: type: string collectionFormat: csv @@ -140,6 +141,7 @@ paths: description: successful operation schema: type: array + uniqueItems: true items: $ref: '#/definitions/Pet' '400': @@ -1234,6 +1236,7 @@ definitions: example: doggie photoUrls: type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/modules/openapi-generator/src/test/resources/3_0/setResponse.yaml b/modules/openapi-generator/src/test/resources/3_0/setResponse.yaml new file mode 100644 index 00000000000..3f74058b28b --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_0/setResponse.yaml @@ -0,0 +1,32 @@ +openapi: 3.0.0 +paths: + /examples: + get: + tags: + - Examples + summary: Get a list of transactions + operationId: getFilteredTransactions + parameters: + - $ref: '#/components/parameters/operationsQueryParam' + responses: + 200: + description: A list of deleted consumers + content: + application/json: + schema: + type: array + uniqueItems: true + items: + type: string + +components: + parameters: + operationsQueryParam: + name: operations + description: Operations list + in: query + required: false + schema: + type: array + items: + type: string \ No newline at end of file diff --git a/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml b/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml index 5313659ef23..7a47b6f9bee 100644 --- a/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml +++ b/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml @@ -139,6 +139,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -148,11 +149,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1323,6 +1326,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml b/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml index 5313659ef23..7a47b6f9bee 100644 --- a/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml +++ b/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml @@ -139,6 +139,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -148,11 +149,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1323,6 +1326,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/go/go-petstore/api/openapi.yaml b/samples/client/petstore/go/go-petstore/api/openapi.yaml index 5313659ef23..7a47b6f9bee 100644 --- a/samples/client/petstore/go/go-petstore/api/openapi.yaml +++ b/samples/client/petstore/go/go-petstore/api/openapi.yaml @@ -139,6 +139,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -148,11 +149,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1323,6 +1326,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/haskell-http-client/openapi.yaml b/samples/client/petstore/haskell-http-client/openapi.yaml index 5313659ef23..7a47b6f9bee 100644 --- a/samples/client/petstore/haskell-http-client/openapi.yaml +++ b/samples/client/petstore/haskell-http-client/openapi.yaml @@ -139,6 +139,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -148,11 +149,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1323,6 +1326,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/feign/api/openapi.yaml b/samples/client/petstore/java/feign/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/feign/api/openapi.yaml +++ b/samples/client/petstore/java/feign/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/api/PetApi.java index 4996156d28a..48ecf31fd3f 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/api/PetApi.java @@ -6,6 +6,7 @@ import org.openapitools.client.EncodingUtils; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -90,13 +91,13 @@ public interface PetApi extends ApiClient.Api { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> */ @RequestLine("GET /pet/findByTags?tags={tags}") @Headers({ "Accept: application/json", }) - List findPetsByTags(@Param("tags") List tags); + Set findPetsByTags(@Param("tags") Set tags); /** * Finds Pets by tags @@ -111,20 +112,20 @@ public interface PetApi extends ApiClient.Api { *
    *
  • tags - Tags to filter by (required)
  • *
- * @return List<Pet> + * @return Set<Pet> */ @RequestLine("GET /pet/findByTags?tags={tags}") @Headers({ "Accept: application/json", }) - List findPetsByTags(@QueryMap(encoded=true) Map queryParams); + Set findPetsByTags(@QueryMap(encoded=true) Map queryParams); /** * A convenience class for generating query parameters for the * findPetsByTags method in a fluent style. */ public static class FindPetsByTagsQueryParams extends HashMap { - public FindPetsByTagsQueryParams tags(final List value) { + public FindPetsByTagsQueryParams tags(final Set value) { put("tags", EncodingUtils.encodeCollection(value, "csv")); return this; } diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Pet.java index 874476d41a3..986b5ba89da 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -51,7 +53,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -171,7 +173,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -190,12 +192,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/feign10x/api/openapi.yaml b/samples/client/petstore/java/feign10x/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/feign10x/api/openapi.yaml +++ b/samples/client/petstore/java/feign10x/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/api/PetApi.java index 4996156d28a..48ecf31fd3f 100644 --- a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/api/PetApi.java @@ -6,6 +6,7 @@ import org.openapitools.client.EncodingUtils; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -90,13 +91,13 @@ public interface PetApi extends ApiClient.Api { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> */ @RequestLine("GET /pet/findByTags?tags={tags}") @Headers({ "Accept: application/json", }) - List findPetsByTags(@Param("tags") List tags); + Set findPetsByTags(@Param("tags") Set tags); /** * Finds Pets by tags @@ -111,20 +112,20 @@ public interface PetApi extends ApiClient.Api { *
    *
  • tags - Tags to filter by (required)
  • *
- * @return List<Pet> + * @return Set<Pet> */ @RequestLine("GET /pet/findByTags?tags={tags}") @Headers({ "Accept: application/json", }) - List findPetsByTags(@QueryMap(encoded=true) Map queryParams); + Set findPetsByTags(@QueryMap(encoded=true) Map queryParams); /** * A convenience class for generating query parameters for the * findPetsByTags method in a fluent style. */ public static class FindPetsByTagsQueryParams extends HashMap { - public FindPetsByTagsQueryParams tags(final List value) { + public FindPetsByTagsQueryParams tags(final Set value) { put("tags", EncodingUtils.encodeCollection(value, "csv")); return this; } diff --git a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/Pet.java index be74dd5ca08..cd98c32b838 100644 --- a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/google-api-client/api/openapi.yaml b/samples/client/petstore/java/google-api-client/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/google-api-client/api/openapi.yaml +++ b/samples/client/petstore/java/google-api-client/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/google-api-client/docs/Pet.md b/samples/client/petstore/java/google-api-client/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/google-api-client/docs/Pet.md +++ b/samples/client/petstore/java/google-api-client/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/google-api-client/docs/PetApi.md b/samples/client/petstore/java/google-api-client/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/google-api-client/docs/PetApi.md +++ b/samples/client/petstore/java/google-api-client/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/api/PetApi.java index 2502d00f969..561e4336d72 100644 --- a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/api/PetApi.java @@ -5,6 +5,7 @@ import org.openapitools.client.ApiClient; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import com.fasterxml.jackson.core.type.TypeReference; import com.google.api.client.http.EmptyContent; @@ -303,12 +304,12 @@ public class PetApi { *

200 - successful operation *

400 - Invalid tag value * @param tags Tags to filter by - * @return List<Pet> + * @return Set<Pet> * @throws IOException if an error occurs while attempting to invoke the API **/ - public List findPetsByTags(List tags) throws IOException { + public Set findPetsByTags(Set tags) throws IOException { HttpResponse response = findPetsByTagsForHttpResponse(tags); - TypeReference> typeRef = new TypeReference>() {}; + TypeReference> typeRef = new TypeReference>() {}; return apiClient.getObjectMapper().readValue(response.getContent(), typeRef); } @@ -319,16 +320,16 @@ public class PetApi { *

400 - Invalid tag value * @param tags Tags to filter by * @param params Map of query params. A collection will be interpreted as passing in multiple instances of the same query param. - * @return List<Pet> + * @return Set<Pet> * @throws IOException if an error occurs while attempting to invoke the API **/ - public List findPetsByTags(List tags, Map params) throws IOException { + public Set findPetsByTags(Set tags, Map params) throws IOException { HttpResponse response = findPetsByTagsForHttpResponse(tags, params); - TypeReference> typeRef = new TypeReference>() {}; + TypeReference> typeRef = new TypeReference>() {}; return apiClient.getObjectMapper().readValue(response.getContent(), typeRef); } - public HttpResponse findPetsByTagsForHttpResponse(List tags) throws IOException { + public HttpResponse findPetsByTagsForHttpResponse(Set tags) throws IOException { // verify the required parameter 'tags' is set if (tags == null) { throw new IllegalArgumentException("Missing the required parameter 'tags' when calling findPetsByTags"); @@ -353,7 +354,7 @@ public class PetApi { return apiClient.getHttpRequestFactory().buildRequest(HttpMethods.GET, genericUrl, content).execute(); } - public HttpResponse findPetsByTagsForHttpResponse(List tags, Map params) throws IOException { + public HttpResponse findPetsByTagsForHttpResponse(Set tags, Map params) throws IOException { // verify the required parameter 'tags' is set if (tags == null) { throw new IllegalArgumentException("Missing the required parameter 'tags' when calling findPetsByTags"); diff --git a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Pet.java index be74dd5ca08..cd98c32b838 100644 --- a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/google-api-client/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/google-api-client/src/test/java/org/openapitools/client/api/PetApiTest.java index 8166945a17a..16ff70db5ae 100644 --- a/samples/client/petstore/java/google-api-client/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/google-api-client/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -93,8 +94,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws IOException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/jersey1/api/openapi.yaml b/samples/client/petstore/java/jersey1/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/jersey1/api/openapi.yaml +++ b/samples/client/petstore/java/jersey1/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/jersey1/docs/Pet.md b/samples/client/petstore/java/jersey1/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/jersey1/docs/Pet.md +++ b/samples/client/petstore/java/jersey1/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/jersey1/docs/PetApi.md b/samples/client/petstore/java/jersey1/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/jersey1/docs/PetApi.md +++ b/samples/client/petstore/java/jersey1/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/api/PetApi.java index 8480949a5ec..6d7aa3f33ba 100644 --- a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/api/PetApi.java @@ -23,6 +23,7 @@ import org.openapitools.client.Pair; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; @@ -189,12 +190,12 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException if fails to make API call * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { + public Set findPetsByTags(Set tags) throws ApiException { Object localVarPostBody = null; // verify the required parameter 'tags' is set @@ -229,7 +230,7 @@ public class PetApi { String[] localVarAuthNames = new String[] { "petstore_auth" }; - GenericType> localVarReturnType = new GenericType>() {}; + GenericType> localVarReturnType = new GenericType>() {}; return apiClient.invokeAPI(localVarPath, "GET", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType); } /** diff --git a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Pet.java index be74dd5ca08..cd98c32b838 100644 --- a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/jersey1/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/jersey1/src/test/java/org/openapitools/client/api/PetApiTest.java index d3fbe90a5a6..5f67e0d3b78 100644 --- a/samples/client/petstore/java/jersey1/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/jersey1/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -93,8 +94,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws ApiException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/jersey2-java6/api/openapi.yaml b/samples/client/petstore/java/jersey2-java6/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/jersey2-java6/api/openapi.yaml +++ b/samples/client/petstore/java/jersey2-java6/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/jersey2-java6/docs/Pet.md b/samples/client/petstore/java/jersey2-java6/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/jersey2-java6/docs/Pet.md +++ b/samples/client/petstore/java/jersey2-java6/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/jersey2-java6/docs/PetApi.md b/samples/client/petstore/java/jersey2-java6/docs/PetApi.md index ca6658ce094..8d927130cee 100644 --- a/samples/client/petstore/java/jersey2-java6/docs/PetApi.md +++ b/samples/client/petstore/java/jersey2-java6/docs/PetApi.md @@ -217,7 +217,7 @@ Name | Type | Description | Notes # **findPetsByTags** -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -243,9 +243,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -262,11 +262,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/api/PetApi.java index 18c2941546d..d8c91125157 100644 --- a/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/api/PetApi.java @@ -30,6 +30,7 @@ import java.io.IOException; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.lang.reflect.Type; import java.util.ArrayList; @@ -418,7 +419,7 @@ public class PetApi { * @deprecated */ @Deprecated - public okhttp3.Call findPetsByTagsCall(List tags, final ApiCallback _callback) throws ApiException { + public okhttp3.Call findPetsByTagsCall(Set tags, final ApiCallback _callback) throws ApiException { Object localVarPostBody = null; // create path and map variables @@ -453,7 +454,7 @@ public class PetApi { @Deprecated @SuppressWarnings("rawtypes") - private okhttp3.Call findPetsByTagsValidateBeforeCall(List tags, final ApiCallback _callback) throws ApiException { + private okhttp3.Call findPetsByTagsValidateBeforeCall(Set tags, final ApiCallback _callback) throws ApiException { // verify the required parameter 'tags' is set if (tags == null) { @@ -470,7 +471,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details @@ -481,8 +482,8 @@ public class PetApi { * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { - ApiResponse> localVarResp = findPetsByTagsWithHttpInfo(tags); + public Set findPetsByTags(Set tags) throws ApiException { + ApiResponse> localVarResp = findPetsByTagsWithHttpInfo(tags); return localVarResp.getData(); } @@ -490,7 +491,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return ApiResponse<List<Pet>> + * @return ApiResponse<Set<Pet>> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details
@@ -501,9 +502,9 @@ public class PetApi { * @deprecated */ @Deprecated - public ApiResponse> findPetsByTagsWithHttpInfo(List tags) throws ApiException { + public ApiResponse> findPetsByTagsWithHttpInfo(Set tags) throws ApiException { okhttp3.Call localVarCall = findPetsByTagsValidateBeforeCall(tags, null); - Type localVarReturnType = new TypeToken>(){}.getType(); + Type localVarReturnType = new TypeToken>(){}.getType(); return localVarApiClient.execute(localVarCall, localVarReturnType); } @@ -523,10 +524,10 @@ public class PetApi { * @deprecated */ @Deprecated - public okhttp3.Call findPetsByTagsAsync(List tags, final ApiCallback> _callback) throws ApiException { + public okhttp3.Call findPetsByTagsAsync(Set tags, final ApiCallback> _callback) throws ApiException { okhttp3.Call localVarCall = findPetsByTagsValidateBeforeCall(tags, _callback); - Type localVarReturnType = new TypeToken>(){}.getType(); + Type localVarReturnType = new TypeToken>(){}.getType(); localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); return localVarCall; } diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/Pet.java index 5b9c995a83e..ba5aea7dadc 100644 --- a/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/Pet.java @@ -23,7 +23,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; @@ -46,7 +48,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -174,7 +176,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -191,12 +193,12 @@ public class Pet { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/jersey2-java6/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/jersey2-java6/src/test/java/org/openapitools/client/api/PetApiTest.java index f31cc07244e..27c60b40246 100644 --- a/samples/client/petstore/java/jersey2-java6/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/jersey2-java6/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -93,8 +94,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws ApiException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/jersey2-java7/api/openapi.yaml b/samples/client/petstore/java/jersey2-java7/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/jersey2-java7/api/openapi.yaml +++ b/samples/client/petstore/java/jersey2-java7/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/jersey2-java7/docs/Pet.md b/samples/client/petstore/java/jersey2-java7/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/jersey2-java7/docs/Pet.md +++ b/samples/client/petstore/java/jersey2-java7/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/jersey2-java7/docs/PetApi.md b/samples/client/petstore/java/jersey2-java7/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/jersey2-java7/docs/PetApi.md +++ b/samples/client/petstore/java/jersey2-java7/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/api/PetApi.java index 5d761c628c1..8f2c6c9f99a 100644 --- a/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/api/PetApi.java @@ -11,6 +11,7 @@ import javax.ws.rs.core.GenericType; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -258,7 +259,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException if fails to make API call * @http.response.details
@@ -269,7 +270,7 @@ public class PetApi { * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { + public Set findPetsByTags(Set tags) throws ApiException { return findPetsByTagsWithHttpInfo(tags).getData(); } @@ -277,7 +278,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return ApiResponse<List<Pet>> + * @return ApiResponse<Set<Pet>> * @throws ApiException if fails to make API call * @http.response.details
@@ -288,7 +289,7 @@ public class PetApi { * @deprecated */ @Deprecated - public ApiResponse> findPetsByTagsWithHttpInfo(List tags) throws ApiException { + public ApiResponse> findPetsByTagsWithHttpInfo(Set tags) throws ApiException { Object localVarPostBody = null; // verify the required parameter 'tags' is set @@ -322,7 +323,7 @@ public class PetApi { String[] localVarAuthNames = new String[] { "petstore_auth" }; - GenericType> localVarReturnType = new GenericType>() {}; + GenericType> localVarReturnType = new GenericType>() {}; return apiClient.invokeAPI("PetApi.findPetsByTags", localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAccept, localVarContentType, diff --git a/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/model/Pet.java index be74dd5ca08..cd98c32b838 100644 --- a/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/jersey2-java7/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/jersey2-java7/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/jersey2-java7/src/test/java/org/openapitools/client/api/PetApiTest.java index 06b207f753e..708e0f0f024 100644 --- a/samples/client/petstore/java/jersey2-java7/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/jersey2-java7/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -25,6 +25,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi diff --git a/samples/client/petstore/java/jersey2-java8/api/openapi.yaml b/samples/client/petstore/java/jersey2-java8/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/jersey2-java8/api/openapi.yaml +++ b/samples/client/petstore/java/jersey2-java8/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/jersey2-java8/docs/Pet.md b/samples/client/petstore/java/jersey2-java8/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/jersey2-java8/docs/Pet.md +++ b/samples/client/petstore/java/jersey2-java8/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/jersey2-java8/docs/PetApi.md b/samples/client/petstore/java/jersey2-java8/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/jersey2-java8/docs/PetApi.md +++ b/samples/client/petstore/java/jersey2-java8/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/api/PetApi.java index 5d761c628c1..8f2c6c9f99a 100644 --- a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/api/PetApi.java @@ -11,6 +11,7 @@ import javax.ws.rs.core.GenericType; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -258,7 +259,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException if fails to make API call * @http.response.details
@@ -269,7 +270,7 @@ public class PetApi { * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { + public Set findPetsByTags(Set tags) throws ApiException { return findPetsByTagsWithHttpInfo(tags).getData(); } @@ -277,7 +278,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return ApiResponse<List<Pet>> + * @return ApiResponse<Set<Pet>> * @throws ApiException if fails to make API call * @http.response.details
@@ -288,7 +289,7 @@ public class PetApi { * @deprecated */ @Deprecated - public ApiResponse> findPetsByTagsWithHttpInfo(List tags) throws ApiException { + public ApiResponse> findPetsByTagsWithHttpInfo(Set tags) throws ApiException { Object localVarPostBody = null; // verify the required parameter 'tags' is set @@ -322,7 +323,7 @@ public class PetApi { String[] localVarAuthNames = new String[] { "petstore_auth" }; - GenericType> localVarReturnType = new GenericType>() {}; + GenericType> localVarReturnType = new GenericType>() {}; return apiClient.invokeAPI("PetApi.findPetsByTags", localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAccept, localVarContentType, diff --git a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Pet.java index 2df466732f7..3baccce6f9c 100644 --- a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/api/PetApiTest.java index fd382967f1d..86d62c0beed 100644 --- a/samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/jersey2-java8/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -90,8 +91,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws ApiException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/native/api/openapi.yaml b/samples/client/petstore/java/native/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/native/api/openapi.yaml +++ b/samples/client/petstore/java/native/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/native/docs/Pet.md b/samples/client/petstore/java/native/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/native/docs/Pet.md +++ b/samples/client/petstore/java/native/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/native/docs/PetApi.md b/samples/client/petstore/java/native/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/native/docs/PetApi.md +++ b/samples/client/petstore/java/native/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/PetApi.java index b8d9fa5c69a..342595698bc 100644 --- a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/PetApi.java @@ -19,6 +19,7 @@ import org.openapitools.client.Pair; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; @@ -226,12 +227,12 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException if fails to make API call * @deprecated */ @Deprecated - public List findPetsByTags (List tags) throws ApiException { + public Set findPetsByTags (Set tags) throws ApiException { // verify the required parameter 'tags' is set if (tags == null) { throw new ApiException(400, "Missing the required parameter 'tags' when calling findPetsByTags"); @@ -274,7 +275,7 @@ public class PetApi { localVarResponse.headers(), localVarResponse.body() == null ? null : new String(localVarResponse.body().readAllBytes())); } - return memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference>() {}); + return memberVarObjectMapper.readValue(localVarResponse.body(), new TypeReference>() {}); } catch (IOException e) { throw new ApiException(e); } diff --git a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Pet.java index 2df466732f7..3baccce6f9c 100644 --- a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/native/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/native/src/test/java/org/openapitools/client/api/PetApiTest.java index 82fe8d503f1..0be54dcc1b6 100644 --- a/samples/client/petstore/java/native/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/native/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -93,8 +94,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws ApiException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/api/openapi.yaml b/samples/client/petstore/java/okhttp-gson-parcelableModel/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/api/openapi.yaml +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Pet.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Pet.md index a64a5b131dc..932bd08f0c5 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Pet.md +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/PetApi.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/PetApi.md index ca6658ce094..8d927130cee 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/PetApi.md +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/PetApi.md @@ -217,7 +217,7 @@ Name | Type | Description | Notes # **findPetsByTags** -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -243,9 +243,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -262,11 +262,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/api/PetApi.java index 18c2941546d..d8c91125157 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/api/PetApi.java @@ -30,6 +30,7 @@ import java.io.IOException; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.lang.reflect.Type; import java.util.ArrayList; @@ -418,7 +419,7 @@ public class PetApi { * @deprecated */ @Deprecated - public okhttp3.Call findPetsByTagsCall(List tags, final ApiCallback _callback) throws ApiException { + public okhttp3.Call findPetsByTagsCall(Set tags, final ApiCallback _callback) throws ApiException { Object localVarPostBody = null; // create path and map variables @@ -453,7 +454,7 @@ public class PetApi { @Deprecated @SuppressWarnings("rawtypes") - private okhttp3.Call findPetsByTagsValidateBeforeCall(List tags, final ApiCallback _callback) throws ApiException { + private okhttp3.Call findPetsByTagsValidateBeforeCall(Set tags, final ApiCallback _callback) throws ApiException { // verify the required parameter 'tags' is set if (tags == null) { @@ -470,7 +471,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details
@@ -481,8 +482,8 @@ public class PetApi { * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { - ApiResponse> localVarResp = findPetsByTagsWithHttpInfo(tags); + public Set findPetsByTags(Set tags) throws ApiException { + ApiResponse> localVarResp = findPetsByTagsWithHttpInfo(tags); return localVarResp.getData(); } @@ -490,7 +491,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return ApiResponse<List<Pet>> + * @return ApiResponse<Set<Pet>> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details
@@ -501,9 +502,9 @@ public class PetApi { * @deprecated */ @Deprecated - public ApiResponse> findPetsByTagsWithHttpInfo(List tags) throws ApiException { + public ApiResponse> findPetsByTagsWithHttpInfo(Set tags) throws ApiException { okhttp3.Call localVarCall = findPetsByTagsValidateBeforeCall(tags, null); - Type localVarReturnType = new TypeToken>(){}.getType(); + Type localVarReturnType = new TypeToken>(){}.getType(); return localVarApiClient.execute(localVarCall, localVarReturnType); } @@ -523,10 +524,10 @@ public class PetApi { * @deprecated */ @Deprecated - public okhttp3.Call findPetsByTagsAsync(List tags, final ApiCallback> _callback) throws ApiException { + public okhttp3.Call findPetsByTagsAsync(Set tags, final ApiCallback> _callback) throws ApiException { okhttp3.Call localVarCall = findPetsByTagsValidateBeforeCall(tags, _callback); - Type localVarReturnType = new TypeToken>(){}.getType(); + Type localVarReturnType = new TypeToken>(){}.getType(); localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); return localVarCall; } diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Pet.java index aba619a1c92..01ddfa84b9f 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import android.os.Parcelable; @@ -49,7 +51,7 @@ public class Pet implements Parcelable { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -179,7 +181,7 @@ public class Pet implements Parcelable { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -196,12 +198,12 @@ public class Pet implements Parcelable { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } @@ -322,7 +324,7 @@ public class Pet implements Parcelable { id = (Long)in.readValue(null); category = (Category)in.readValue(Category.class.getClassLoader()); name = (String)in.readValue(null); - photoUrls = (List)in.readValue(null); + photoUrls = (Set)in.readValue(null); tags = (List)in.readValue(Tag.class.getClassLoader()); status = (StatusEnum)in.readValue(null); } diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/test/java/org/openapitools/client/api/PetApiTest.java index 07444455f38..5fa5b2a1ae7 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -93,8 +94,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws ApiException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/okhttp-gson/api/openapi.yaml b/samples/client/petstore/java/okhttp-gson/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/okhttp-gson/api/openapi.yaml +++ b/samples/client/petstore/java/okhttp-gson/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/okhttp-gson/docs/Pet.md b/samples/client/petstore/java/okhttp-gson/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/okhttp-gson/docs/Pet.md +++ b/samples/client/petstore/java/okhttp-gson/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/okhttp-gson/docs/PetApi.md b/samples/client/petstore/java/okhttp-gson/docs/PetApi.md index ca6658ce094..8d927130cee 100644 --- a/samples/client/petstore/java/okhttp-gson/docs/PetApi.md +++ b/samples/client/petstore/java/okhttp-gson/docs/PetApi.md @@ -217,7 +217,7 @@ Name | Type | Description | Notes # **findPetsByTags** -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -243,9 +243,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -262,11 +262,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/api/PetApi.java index 18c2941546d..d8c91125157 100644 --- a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/api/PetApi.java @@ -30,6 +30,7 @@ import java.io.IOException; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.lang.reflect.Type; import java.util.ArrayList; @@ -418,7 +419,7 @@ public class PetApi { * @deprecated */ @Deprecated - public okhttp3.Call findPetsByTagsCall(List tags, final ApiCallback _callback) throws ApiException { + public okhttp3.Call findPetsByTagsCall(Set tags, final ApiCallback _callback) throws ApiException { Object localVarPostBody = null; // create path and map variables @@ -453,7 +454,7 @@ public class PetApi { @Deprecated @SuppressWarnings("rawtypes") - private okhttp3.Call findPetsByTagsValidateBeforeCall(List tags, final ApiCallback _callback) throws ApiException { + private okhttp3.Call findPetsByTagsValidateBeforeCall(Set tags, final ApiCallback _callback) throws ApiException { // verify the required parameter 'tags' is set if (tags == null) { @@ -470,7 +471,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details
@@ -481,8 +482,8 @@ public class PetApi { * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { - ApiResponse> localVarResp = findPetsByTagsWithHttpInfo(tags); + public Set findPetsByTags(Set tags) throws ApiException { + ApiResponse> localVarResp = findPetsByTagsWithHttpInfo(tags); return localVarResp.getData(); } @@ -490,7 +491,7 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return ApiResponse<List<Pet>> + * @return ApiResponse<Set<Pet>> * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body * @http.response.details
@@ -501,9 +502,9 @@ public class PetApi { * @deprecated */ @Deprecated - public ApiResponse> findPetsByTagsWithHttpInfo(List tags) throws ApiException { + public ApiResponse> findPetsByTagsWithHttpInfo(Set tags) throws ApiException { okhttp3.Call localVarCall = findPetsByTagsValidateBeforeCall(tags, null); - Type localVarReturnType = new TypeToken>(){}.getType(); + Type localVarReturnType = new TypeToken>(){}.getType(); return localVarApiClient.execute(localVarCall, localVarReturnType); } @@ -523,10 +524,10 @@ public class PetApi { * @deprecated */ @Deprecated - public okhttp3.Call findPetsByTagsAsync(List tags, final ApiCallback> _callback) throws ApiException { + public okhttp3.Call findPetsByTagsAsync(Set tags, final ApiCallback> _callback) throws ApiException { okhttp3.Call localVarCall = findPetsByTagsValidateBeforeCall(tags, _callback); - Type localVarReturnType = new TypeToken>(){}.getType(); + Type localVarReturnType = new TypeToken>(){}.getType(); localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); return localVarCall; } diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Pet.java index e50743626b4..4ea18b217b6 100644 --- a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; @@ -47,7 +49,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -175,7 +177,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -192,12 +194,12 @@ public class Pet { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/api/PetApiTest.java index 6a6e788acd3..9562854f24c 100644 --- a/samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -26,8 +26,10 @@ import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.concurrent.ThreadLocalRandom; import java.io.BufferedWriter; import java.io.File; @@ -324,7 +326,7 @@ public class PetApiTest { api.updatePet(pet); - List pets = api.findPetsByTags(Arrays.asList("friendly")); + Set pets = api.findPetsByTags(new HashSet<>(Arrays.asList("friendly"))); assertNotNull(pets); boolean found = false; @@ -396,7 +398,7 @@ public class PetApiTest { assertTrue(pet1.hashCode() == pet1.hashCode()); pet2.setName("really-happy"); - pet2.setPhotoUrls(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")); + pet2.setPhotoUrls(new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"))); assertFalse(pet1.equals(pet2)); assertFalse(pet2.equals(pet1)); assertFalse(pet1.hashCode() == (pet2.hashCode())); @@ -404,7 +406,7 @@ public class PetApiTest { assertTrue(pet2.hashCode() == pet2.hashCode()); pet1.setName("really-happy"); - pet1.setPhotoUrls(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")); + pet1.setPhotoUrls(new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"))); assertTrue(pet1.equals(pet2)); assertTrue(pet2.equals(pet1)); assertTrue(pet1.hashCode() == pet2.hashCode()); @@ -423,7 +425,7 @@ public class PetApiTest { pet.setCategory(category); pet.setStatus(Pet.StatusEnum.AVAILABLE); - List photos = Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2"); + Set photos = new HashSet<>(Arrays.asList("http://foo.bar.com/1", "http://foo.bar.com/2")); pet.setPhotoUrls(photos); return pet; diff --git a/samples/client/petstore/java/rest-assured-jackson/api/openapi.yaml b/samples/client/petstore/java/rest-assured-jackson/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/rest-assured-jackson/api/openapi.yaml +++ b/samples/client/petstore/java/rest-assured-jackson/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/rest-assured-jackson/docs/Pet.md b/samples/client/petstore/java/rest-assured-jackson/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/rest-assured-jackson/docs/Pet.md +++ b/samples/client/petstore/java/rest-assured-jackson/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/rest-assured-jackson/docs/PetApi.md b/samples/client/petstore/java/rest-assured-jackson/docs/PetApi.md index c2aaadd88c7..b4808cf5267 100644 --- a/samples/client/petstore/java/rest-assured-jackson/docs/PetApi.md +++ b/samples/client/petstore/java/rest-assured-jackson/docs/PetApi.md @@ -140,7 +140,7 @@ Name | Type | Description | Notes # **findPetsByTags** -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -165,11 +165,11 @@ api.findPetsByTags() Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | [default to new ArrayList<>()] + **tags** | [**Set<String>**](String.md)| Tags to filter by | [default to new LinkedHashSet<>()] ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/api/PetApi.java index b6508c0b98e..fb3e63b07c9 100644 --- a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/api/PetApi.java @@ -16,6 +16,7 @@ package org.openapitools.client.api; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.Arrays; @@ -395,7 +396,7 @@ public class PetApi { * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * * @see #tagsQuery Tags to filter by (required) - * return List<Pet> + * return Set<Pet> * @deprecated */ @Deprecated @@ -427,17 +428,17 @@ public class PetApi { /** * GET /pet/findByTags * @param handler handler - * @return List<Pet> + * @return Set<Pet> */ - public List executeAs(Function handler) { - TypeRef> type = new TypeRef>(){}; + public Set executeAs(Function handler) { + TypeRef> type = new TypeRef>(){}; return execute(handler).as(type); } public static final String TAGS_QUERY = "tags"; /** - * @param tags (List<String>) Tags to filter by (required) + * @param tags (Set<String>) Tags to filter by (required) * @return operation */ public FindPetsByTagsOper tagsQuery(Object... tags) { diff --git a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Pet.java index 6a05dd15032..377dc444cf6 100644 --- a/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/rest-assured-jackson/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -53,7 +55,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -175,7 +177,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -195,12 +197,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/api/PetApiTest.java index 46355ce2a52..1ae1e95a3a7 100644 --- a/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -16,6 +16,7 @@ package org.openapitools.client.api; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import org.openapitools.client.ApiClient; import org.openapitools.client.api.PetApi; import io.restassured.builder.RequestSpecBuilder; @@ -125,7 +126,7 @@ public class PetApiTest { */ @Test public void shouldSee200AfterFindPetsByTags() { - List tags = null; + Set tags = null; api.findPetsByTags() .tagsQuery(tags).execute(r -> r.prettyPeek()); // TODO: test validations @@ -136,7 +137,7 @@ public class PetApiTest { */ @Test public void shouldSee400AfterFindPetsByTags() { - List tags = null; + Set tags = null; api.findPetsByTags() .tagsQuery(tags).execute(r -> r.prettyPeek()); // TODO: test validations diff --git a/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/model/PetTest.java b/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/model/PetTest.java index c3c0d4cc35d..4065f7ca1a4 100644 --- a/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/model/PetTest.java +++ b/samples/client/petstore/java/rest-assured-jackson/src/test/java/org/openapitools/client/model/PetTest.java @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import org.junit.Assert; diff --git a/samples/client/petstore/java/rest-assured/api/openapi.yaml b/samples/client/petstore/java/rest-assured/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/rest-assured/api/openapi.yaml +++ b/samples/client/petstore/java/rest-assured/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/rest-assured/docs/Pet.md b/samples/client/petstore/java/rest-assured/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/rest-assured/docs/Pet.md +++ b/samples/client/petstore/java/rest-assured/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/rest-assured/docs/PetApi.md b/samples/client/petstore/java/rest-assured/docs/PetApi.md index e72ab3ae7db..0dffe077533 100644 --- a/samples/client/petstore/java/rest-assured/docs/PetApi.md +++ b/samples/client/petstore/java/rest-assured/docs/PetApi.md @@ -140,7 +140,7 @@ Name | Type | Description | Notes # **findPetsByTags** -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -165,11 +165,11 @@ api.findPetsByTags() Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | [default to new ArrayList<String>()] + **tags** | [**Set<String>**](String.md)| Tags to filter by | [default to new LinkedHashSet<String>()] ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java index fee22f69f3c..600310a6f92 100644 --- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java @@ -17,6 +17,7 @@ import com.google.gson.reflect.TypeToken; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.Arrays; @@ -396,7 +397,7 @@ public class PetApi { * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * * @see #tagsQuery Tags to filter by (required) - * return List<Pet> + * return Set<Pet> * @deprecated */ @Deprecated @@ -428,17 +429,17 @@ public class PetApi { /** * GET /pet/findByTags * @param handler handler - * @return List<Pet> + * @return Set<Pet> */ - public List executeAs(Function handler) { - Type type = new TypeToken>(){}.getType(); + public Set executeAs(Function handler) { + Type type = new TypeToken>(){}.getType(); return execute(handler).as(type); } public static final String TAGS_QUERY = "tags"; /** - * @param tags (List<String>) Tags to filter by (required) + * @param tags (Set<String>) Tags to filter by (required) * @return operation */ public FindPetsByTagsOper tagsQuery(Object... tags) { diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Pet.java index a20c1cfcdd5..79d7d08b863 100644 --- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import javax.validation.constraints.*; @@ -50,7 +52,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -180,7 +182,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -198,12 +200,12 @@ public class Pet { @NotNull @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/rest-assured/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/rest-assured/src/test/java/org/openapitools/client/api/PetApiTest.java index 4bcccd56c79..933f5aed2b8 100644 --- a/samples/client/petstore/java/rest-assured/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/rest-assured/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -28,6 +28,8 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; + import static io.restassured.config.ObjectMapperConfig.objectMapperConfig; import static io.restassured.config.RestAssuredConfig.config; import static org.openapitools.client.GsonObjectMapper.gson; @@ -125,7 +127,7 @@ public class PetApiTest { */ @Test public void shouldSee200AfterFindPetsByTags() { - List tags = null; + Set tags = null; api.findPetsByTags() .tagsQuery(tags).execute(r -> r.prettyPeek()); // TODO: test validations @@ -136,7 +138,7 @@ public class PetApiTest { */ @Test public void shouldSee400AfterFindPetsByTags() { - List tags = null; + Set tags = null; api.findPetsByTags() .tagsQuery(tags).execute(r -> r.prettyPeek()); // TODO: test validations diff --git a/samples/client/petstore/java/resteasy/api/openapi.yaml b/samples/client/petstore/java/resteasy/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/resteasy/api/openapi.yaml +++ b/samples/client/petstore/java/resteasy/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/resteasy/docs/Pet.md b/samples/client/petstore/java/resteasy/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/resteasy/docs/Pet.md +++ b/samples/client/petstore/java/resteasy/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/resteasy/docs/PetApi.md b/samples/client/petstore/java/resteasy/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/resteasy/docs/PetApi.md +++ b/samples/client/petstore/java/resteasy/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/api/PetApi.java index 2f4b2c8561d..106b3032f20 100644 --- a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/api/PetApi.java @@ -10,6 +10,7 @@ import javax.ws.rs.core.GenericType; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -172,12 +173,12 @@ public class PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return a {@code List} + * @return a {@code Set} * @throws ApiException if fails to make API call * @deprecated */ @Deprecated - public List findPetsByTags(List tags) throws ApiException { + public Set findPetsByTags(Set tags) throws ApiException { Object localVarPostBody = null; // verify the required parameter 'tags' is set @@ -211,7 +212,7 @@ public class PetApi { String[] localVarAuthNames = new String[] { "petstore_auth" }; - GenericType> localVarReturnType = new GenericType>() {}; + GenericType> localVarReturnType = new GenericType>() {}; return apiClient.invokeAPI(localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType); } /** diff --git a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Pet.java index be74dd5ca08..cd98c32b838 100644 --- a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/resteasy/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/resteasy/src/test/java/org/openapitools/client/api/PetApiTest.java index d3fbe90a5a6..5f67e0d3b78 100644 --- a/samples/client/petstore/java/resteasy/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/resteasy/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -93,8 +94,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() throws ApiException { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/resttemplate-withXml/api/openapi.yaml b/samples/client/petstore/java/resttemplate-withXml/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/resttemplate-withXml/api/openapi.yaml +++ b/samples/client/petstore/java/resttemplate-withXml/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/resttemplate-withXml/docs/Pet.md b/samples/client/petstore/java/resttemplate-withXml/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/resttemplate-withXml/docs/Pet.md +++ b/samples/client/petstore/java/resttemplate-withXml/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/resttemplate-withXml/docs/PetApi.md b/samples/client/petstore/java/resttemplate-withXml/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/resttemplate-withXml/docs/PetApi.md +++ b/samples/client/petstore/java/resttemplate-withXml/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/api/PetApi.java index 8edc76ba76d..8ed48b27b6d 100644 --- a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/api/PetApi.java @@ -5,6 +5,7 @@ import org.openapitools.client.ApiClient; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.Collections; @@ -209,11 +210,11 @@ public class PetApi { *

200 - successful operation *

400 - Invalid tag value * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws RestClientException if an error occurs while attempting to invoke the API */ @Deprecated - public List findPetsByTags(List tags) throws RestClientException { + public Set findPetsByTags(Set tags) throws RestClientException { return findPetsByTagsWithHttpInfo(tags).getBody(); } @@ -223,11 +224,11 @@ public class PetApi { *

200 - successful operation *

400 - Invalid tag value * @param tags Tags to filter by (required) - * @return ResponseEntity<List<Pet>> + * @return ResponseEntity<Set<Pet>> * @throws RestClientException if an error occurs while attempting to invoke the API */ @Deprecated - public ResponseEntity> findPetsByTagsWithHttpInfo(List tags) throws RestClientException { + public ResponseEntity> findPetsByTagsWithHttpInfo(Set tags) throws RestClientException { Object postBody = null; // verify the required parameter 'tags' is set @@ -253,7 +254,7 @@ public class PetApi { String[] authNames = new String[] { "petstore_auth" }; - ParameterizedTypeReference> returnType = new ParameterizedTypeReference>() {}; + ParameterizedTypeReference> returnType = new ParameterizedTypeReference>() {}; return apiClient.invokeAPI(path, HttpMethod.GET, queryParams, postBody, headerParams, cookieParams, formParams, accept, contentType, authNames, returnType); } /** diff --git a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Pet.java index e4ad0c3e252..ba6fca86e2f 100644 --- a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -63,7 +65,7 @@ public class Pet { // items.example= items.type=String @XmlElement(name = "photoUrls") @XmlElementWrapper(name = "photoUrl") - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; // Is a container wrapped=true @@ -192,7 +194,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -213,12 +215,12 @@ public class Pet { // items.xmlName= @JacksonXmlElementWrapper(useWrapping = true, localName = "photoUrls") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/resttemplate-withXml/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/resttemplate-withXml/src/test/java/org/openapitools/client/api/PetApiTest.java index bf6d14328ec..d4264eb1e9f 100644 --- a/samples/client/petstore/java/resttemplate-withXml/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/resttemplate-withXml/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -92,8 +93,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/resttemplate/api/openapi.yaml b/samples/client/petstore/java/resttemplate/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/resttemplate/api/openapi.yaml +++ b/samples/client/petstore/java/resttemplate/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/resttemplate/docs/Pet.md b/samples/client/petstore/java/resttemplate/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/resttemplate/docs/Pet.md +++ b/samples/client/petstore/java/resttemplate/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/resttemplate/docs/PetApi.md b/samples/client/petstore/java/resttemplate/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/resttemplate/docs/PetApi.md +++ b/samples/client/petstore/java/resttemplate/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/api/PetApi.java index 8edc76ba76d..8ed48b27b6d 100644 --- a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/api/PetApi.java @@ -5,6 +5,7 @@ import org.openapitools.client.ApiClient; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.Collections; @@ -209,11 +210,11 @@ public class PetApi { *

200 - successful operation *

400 - Invalid tag value * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> * @throws RestClientException if an error occurs while attempting to invoke the API */ @Deprecated - public List findPetsByTags(List tags) throws RestClientException { + public Set findPetsByTags(Set tags) throws RestClientException { return findPetsByTagsWithHttpInfo(tags).getBody(); } @@ -223,11 +224,11 @@ public class PetApi { *

200 - successful operation *

400 - Invalid tag value * @param tags Tags to filter by (required) - * @return ResponseEntity<List<Pet>> + * @return ResponseEntity<Set<Pet>> * @throws RestClientException if an error occurs while attempting to invoke the API */ @Deprecated - public ResponseEntity> findPetsByTagsWithHttpInfo(List tags) throws RestClientException { + public ResponseEntity> findPetsByTagsWithHttpInfo(Set tags) throws RestClientException { Object postBody = null; // verify the required parameter 'tags' is set @@ -253,7 +254,7 @@ public class PetApi { String[] authNames = new String[] { "petstore_auth" }; - ParameterizedTypeReference> returnType = new ParameterizedTypeReference>() {}; + ParameterizedTypeReference> returnType = new ParameterizedTypeReference>() {}; return apiClient.invokeAPI(path, HttpMethod.GET, queryParams, postBody, headerParams, cookieParams, formParams, accept, contentType, authNames, returnType); } /** diff --git a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Pet.java index be74dd5ca08..cd98c32b838 100644 --- a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/resttemplate/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/resttemplate/src/test/java/org/openapitools/client/api/PetApiTest.java index bf6d14328ec..d4264eb1e9f 100644 --- a/samples/client/petstore/java/resttemplate/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/resttemplate/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -92,8 +93,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() { - List tags = null; - List response = api.findPetsByTags(tags); + Set tags = null; + Set response = api.findPetsByTags(tags); // TODO: test validations } diff --git a/samples/client/petstore/java/retrofit/api/openapi.yaml b/samples/client/petstore/java/retrofit/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/api/PetApi.java index 858b8107bee..10313a38b77 100644 --- a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/api/PetApi.java @@ -9,6 +9,7 @@ import retrofit.mime.*; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -95,11 +96,11 @@ public interface PetApi { * Sync method * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return List<Pet> + * @return Set<Pet> */ @GET("/pet/findByTags") - List findPetsByTags( + Set findPetsByTags( @retrofit.http.Query("tags") CSVParams tags ); @@ -112,7 +113,7 @@ public interface PetApi { @GET("/pet/findByTags") void findPetsByTags( - @retrofit.http.Query("tags") CSVParams tags, Callback> cb + @retrofit.http.Query("tags") CSVParams tags, Callback> cb ); /** * Find pet by ID diff --git a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/Pet.java index e50743626b4..4ea18b217b6 100644 --- a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; @@ -47,7 +49,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -175,7 +177,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -192,12 +194,12 @@ public class Pet { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/retrofit2-play24/api/openapi.yaml b/samples/client/petstore/java/retrofit2-play24/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit2-play24/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit2-play24/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit2-play24/docs/Pet.md b/samples/client/petstore/java/retrofit2-play24/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/retrofit2-play24/docs/Pet.md +++ b/samples/client/petstore/java/retrofit2-play24/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/retrofit2-play24/docs/PetApi.md b/samples/client/petstore/java/retrofit2-play24/docs/PetApi.md index 088c67ee214..ca4e8b4197a 100644 --- a/samples/client/petstore/java/retrofit2-play24/docs/PetApi.md +++ b/samples/client/petstore/java/retrofit2-play24/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/api/PetApi.java index e2c5e7bfa49..09fcc52ba25 100644 --- a/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/api/PetApi.java @@ -14,6 +14,7 @@ import okhttp3.MultipartBody; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -65,10 +66,10 @@ public interface PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return Call<List<Pet>> + * @return Call<Set<Pet>> */ @GET("pet/findByTags") - F.Promise>> findPetsByTags( + F.Promise>> findPetsByTags( @retrofit2.http.Query("tags") CSVParams tags ); diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/Pet.java index 4fdce22a0ca..de960e6e586 100644 --- a/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -52,7 +54,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -174,7 +176,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -194,12 +196,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/retrofit2-play25/api/openapi.yaml b/samples/client/petstore/java/retrofit2-play25/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit2-play25/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit2-play25/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit2-play25/docs/Pet.md b/samples/client/petstore/java/retrofit2-play25/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/retrofit2-play25/docs/Pet.md +++ b/samples/client/petstore/java/retrofit2-play25/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/retrofit2-play25/docs/PetApi.md b/samples/client/petstore/java/retrofit2-play25/docs/PetApi.md index 088c67ee214..ca4e8b4197a 100644 --- a/samples/client/petstore/java/retrofit2-play25/docs/PetApi.md +++ b/samples/client/petstore/java/retrofit2-play25/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/api/PetApi.java index 581b909f2fe..40e2cded8f9 100644 --- a/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/api/PetApi.java @@ -14,6 +14,7 @@ import okhttp3.MultipartBody; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -65,10 +66,10 @@ public interface PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return Call<List<Pet>> + * @return Call<Set<Pet>> */ @GET("pet/findByTags") - CompletionStage>> findPetsByTags( + CompletionStage>> findPetsByTags( @retrofit2.http.Query("tags") CSVParams tags ); diff --git a/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/Pet.java index 4fdce22a0ca..de960e6e586 100644 --- a/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -52,7 +54,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -174,7 +176,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -194,12 +196,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/retrofit2-play26/api/openapi.yaml b/samples/client/petstore/java/retrofit2-play26/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit2-play26/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit2-play26/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit2-play26/docs/Pet.md b/samples/client/petstore/java/retrofit2-play26/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/retrofit2-play26/docs/Pet.md +++ b/samples/client/petstore/java/retrofit2-play26/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/retrofit2-play26/docs/PetApi.md b/samples/client/petstore/java/retrofit2-play26/docs/PetApi.md index 088c67ee214..ca4e8b4197a 100644 --- a/samples/client/petstore/java/retrofit2-play26/docs/PetApi.md +++ b/samples/client/petstore/java/retrofit2-play26/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/api/PetApi.java index 581b909f2fe..40e2cded8f9 100644 --- a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/api/PetApi.java @@ -14,6 +14,7 @@ import okhttp3.MultipartBody; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -65,10 +66,10 @@ public interface PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return Call<List<Pet>> + * @return Call<Set<Pet>> */ @GET("pet/findByTags") - CompletionStage>> findPetsByTags( + CompletionStage>> findPetsByTags( @retrofit2.http.Query("tags") CSVParams tags ); diff --git a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Pet.java index 4fdce22a0ca..de960e6e586 100644 --- a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -52,7 +54,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -174,7 +176,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -194,12 +196,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/retrofit2/api/openapi.yaml b/samples/client/petstore/java/retrofit2/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit2/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit2/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit2/docs/Pet.md b/samples/client/petstore/java/retrofit2/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/retrofit2/docs/Pet.md +++ b/samples/client/petstore/java/retrofit2/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/retrofit2/docs/PetApi.md b/samples/client/petstore/java/retrofit2/docs/PetApi.md index 088c67ee214..ca4e8b4197a 100644 --- a/samples/client/petstore/java/retrofit2/docs/PetApi.md +++ b/samples/client/petstore/java/retrofit2/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/api/PetApi.java index ddf41efc73b..93738971155 100644 --- a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/api/PetApi.java @@ -12,6 +12,7 @@ import okhttp3.MultipartBody; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -60,12 +61,12 @@ public interface PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return Call<List<Pet>> + * @return Call<Set<Pet>> * @deprecated */ @Deprecated @GET("pet/findByTags") - Call> findPetsByTags( + Call> findPetsByTags( @retrofit2.http.Query("tags") CSVParams tags ); diff --git a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Pet.java index e50743626b4..4ea18b217b6 100644 --- a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; @@ -47,7 +49,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -175,7 +177,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -192,12 +194,12 @@ public class Pet { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/retrofit2rx/api/openapi.yaml b/samples/client/petstore/java/retrofit2rx/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit2rx/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit2rx/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit2rx/docs/Pet.md b/samples/client/petstore/java/retrofit2rx/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/retrofit2rx/docs/Pet.md +++ b/samples/client/petstore/java/retrofit2rx/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/retrofit2rx/docs/PetApi.md b/samples/client/petstore/java/retrofit2rx/docs/PetApi.md index 088c67ee214..ca4e8b4197a 100644 --- a/samples/client/petstore/java/retrofit2rx/docs/PetApi.md +++ b/samples/client/petstore/java/retrofit2rx/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/api/PetApi.java index 5f295827ad3..885b9586c60 100644 --- a/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/api/PetApi.java @@ -12,6 +12,7 @@ import okhttp3.MultipartBody; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -60,12 +61,12 @@ public interface PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return Observable<List<Pet>> + * @return Observable<Set<Pet>> * @deprecated */ @Deprecated @GET("pet/findByTags") - Observable> findPetsByTags( + Observable> findPetsByTags( @retrofit2.http.Query("tags") CSVParams tags ); diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/Pet.java index e50743626b4..4ea18b217b6 100644 --- a/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; @@ -47,7 +49,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -175,7 +177,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -192,12 +194,12 @@ public class Pet { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/retrofit2rx2/api/openapi.yaml b/samples/client/petstore/java/retrofit2rx2/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/retrofit2rx2/api/openapi.yaml +++ b/samples/client/petstore/java/retrofit2rx2/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/retrofit2rx2/docs/Pet.md b/samples/client/petstore/java/retrofit2rx2/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/retrofit2rx2/docs/Pet.md +++ b/samples/client/petstore/java/retrofit2rx2/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/retrofit2rx2/docs/PetApi.md b/samples/client/petstore/java/retrofit2rx2/docs/PetApi.md index 088c67ee214..ca4e8b4197a 100644 --- a/samples/client/petstore/java/retrofit2rx2/docs/PetApi.md +++ b/samples/client/petstore/java/retrofit2rx2/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/api/PetApi.java index 4b54f3a3274..bffcdb107c5 100644 --- a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/api/PetApi.java @@ -13,6 +13,7 @@ import okhttp3.MultipartBody; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.ArrayList; import java.util.HashMap; @@ -61,12 +62,12 @@ public interface PetApi { * Finds Pets by tags * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * @param tags Tags to filter by (required) - * @return Observable<List<Pet>> + * @return Observable<Set<Pet>> * @deprecated */ @Deprecated @GET("pet/findByTags") - Observable> findPetsByTags( + Observable> findPetsByTags( @retrofit2.http.Query("tags") CSVParams tags ); diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Pet.java index e50743626b4..4ea18b217b6 100644 --- a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/Pet.java @@ -24,7 +24,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; @@ -47,7 +49,7 @@ public class Pet { public static final String SERIALIZED_NAME_PHOTO_URLS = "photoUrls"; @SerializedName(SERIALIZED_NAME_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String SERIALIZED_NAME_TAGS = "tags"; @SerializedName(SERIALIZED_NAME_TAGS) @@ -175,7 +177,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -192,12 +194,12 @@ public class Pet { **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/vertx/api/openapi.yaml b/samples/client/petstore/java/vertx/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/vertx/api/openapi.yaml +++ b/samples/client/petstore/java/vertx/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/vertx/docs/Pet.md b/samples/client/petstore/java/vertx/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/vertx/docs/Pet.md +++ b/samples/client/petstore/java/vertx/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/vertx/docs/PetApi.md b/samples/client/petstore/java/vertx/docs/PetApi.md index 6b8fb662c80..4a8a3f1993a 100644 --- a/samples/client/petstore/java/vertx/docs/PetApi.md +++ b/samples/client/petstore/java/vertx/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApi.java index eaa6f805d85..e7fed648a48 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApi.java @@ -3,6 +3,7 @@ package org.openapitools.client.api; import io.vertx.core.file.AsyncFile; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import io.vertx.core.AsyncResult; import io.vertx.core.Handler; import io.vertx.core.json.JsonObject; @@ -17,7 +18,7 @@ public interface PetApi { void findPetsByStatus(List status, Handler>> handler); - void findPetsByTags(List tags, Handler>> handler); + void findPetsByTags(Set tags, Handler>> handler); void getPetById(Long petId, Handler> handler); diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApiImpl.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApiImpl.java index 545d14ebf2d..a29e0097394 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApiImpl.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/PetApiImpl.java @@ -3,6 +3,7 @@ package org.openapitools.client.api; import io.vertx.core.file.AsyncFile; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import io.vertx.core.AsyncResult; import io.vertx.core.Handler; @@ -160,7 +161,7 @@ public class PetApiImpl implements PetApi { * @param tags Tags to filter by (required) * @param resultHandler Asynchronous result handler */ - public void findPetsByTags(List tags, Handler>> resultHandler) { + public void findPetsByTags(Set tags, Handler>> resultHandler) { Object localVarBody = null; // verify the required parameter 'tags' is set @@ -189,7 +190,7 @@ public class PetApiImpl implements PetApi { String[] localVarAccepts = { "application/xml", "application/json" }; String[] localVarContentTypes = { }; String[] localVarAuthNames = new String[] { "petstore_auth" }; - TypeReference> localVarReturnType = new TypeReference>() {}; + TypeReference> localVarReturnType = new TypeReference>() {}; apiClient.invokeAPI(localVarPath, "GET", localVarQueryParams, localVarBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAccepts, localVarContentTypes, localVarAuthNames, localVarReturnType, resultHandler); } /** diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/rxjava/PetApi.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/rxjava/PetApi.java index 4314f8dc991..b7671ba3e10 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/rxjava/PetApi.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/api/rxjava/PetApi.java @@ -3,6 +3,7 @@ package org.openapitools.client.api.rxjava; import io.vertx.core.file.AsyncFile; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.*; @@ -94,7 +95,7 @@ public class PetApi { * @param tags Tags to filter by (required) * @param resultHandler Asynchronous result handler */ - public void findPetsByTags(List tags, Handler>> resultHandler) { + public void findPetsByTags(Set tags, Handler>> resultHandler) { delegate.findPetsByTags(tags, resultHandler); } @@ -104,7 +105,7 @@ public class PetApi { * @param tags Tags to filter by (required) * @return Asynchronous result handler (RxJava Single) */ - public Single> rxFindPetsByTags(List tags) { + public Single> rxFindPetsByTags(Set tags) { return Single.create(new io.vertx.rx.java.SingleOnSubscribeAdapter<>(fut -> { delegate.findPetsByTags(tags, fut); })); diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Pet.java index 2df466732f7..3baccce6f9c 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/vertx/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/vertx/src/test/java/org/openapitools/client/api/PetApiTest.java index 6bd7967e30a..17810a6435e 100644 --- a/samples/client/petstore/java/vertx/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/vertx/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -37,6 +37,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -117,7 +118,7 @@ public class PetApiTest { @Test public void findPetsByTagsTest(TestContext context) { Async async = context.async(); - List tags = null; + Set tags = null; api.findPetsByTags(tags, result -> { // TODO: test validations async.complete(); diff --git a/samples/client/petstore/java/webclient/api/openapi.yaml b/samples/client/petstore/java/webclient/api/openapi.yaml index 30aad25824c..a49359fd348 100644 --- a/samples/client/petstore/java/webclient/api/openapi.yaml +++ b/samples/client/petstore/java/webclient/api/openapi.yaml @@ -144,6 +144,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -153,11 +154,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1384,6 +1387,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/client/petstore/java/webclient/docs/Pet.md b/samples/client/petstore/java/webclient/docs/Pet.md index 37ac007b793..bdcdad6b3e6 100644 --- a/samples/client/petstore/java/webclient/docs/Pet.md +++ b/samples/client/petstore/java/webclient/docs/Pet.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **id** | **Long** | | [optional] **category** | [**Category**](Category.md) | | [optional] **name** | **String** | | -**photoUrls** | **List<String>** | | +**photoUrls** | **Set<String>** | | **tags** | [**List<Tag>**](Tag.md) | | [optional] **status** | [**StatusEnum**](#StatusEnum) | pet status in the store | [optional] diff --git a/samples/client/petstore/java/webclient/docs/PetApi.md b/samples/client/petstore/java/webclient/docs/PetApi.md index 875a8e6783e..d56efcd5967 100644 --- a/samples/client/petstore/java/webclient/docs/PetApi.md +++ b/samples/client/petstore/java/webclient/docs/PetApi.md @@ -227,7 +227,7 @@ Name | Type | Description | Notes ## findPetsByTags -> List<Pet> findPetsByTags(tags) +> Set<Pet> findPetsByTags(tags) Finds Pets by tags @@ -254,9 +254,9 @@ public class Example { petstore_auth.setAccessToken("YOUR ACCESS TOKEN"); PetApi apiInstance = new PetApi(defaultClient); - List tags = Arrays.asList(); // List | Tags to filter by + Set tags = Arrays.asList(); // Set | Tags to filter by try { - List result = apiInstance.findPetsByTags(tags); + Set result = apiInstance.findPetsByTags(tags); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling PetApi#findPetsByTags"); @@ -274,11 +274,11 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **tags** | [**List<String>**](String.md)| Tags to filter by | + **tags** | [**Set<String>**](String.md)| Tags to filter by | ### Return type -[**List<Pet>**](Pet.md) +[**Set<Pet>**](Pet.md) ### Authorization diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/api/PetApi.java index f8743b2ac46..dce19828d43 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/api/PetApi.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/api/PetApi.java @@ -5,6 +5,7 @@ import org.openapitools.client.ApiClient; import java.io.File; import org.openapitools.client.model.ModelApiResponse; import org.openapitools.client.model.Pet; +import java.util.Set; import java.util.HashMap; import java.util.List; @@ -160,10 +161,10 @@ public class PetApi { *

200 - successful operation *

400 - Invalid tag value * @param tags Tags to filter by - * @return List<Pet> + * @return Set<Pet> * @throws WebClientResponseException if an error occurs while attempting to invoke the API */ - public Flux findPetsByTags(List tags) throws WebClientResponseException { + public Flux findPetsByTags(Set tags) throws WebClientResponseException { Object postBody = null; // verify the required parameter 'tags' is set if (tags == null) { diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Pet.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Pet.java index 2df466732f7..3baccce6f9c 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Pet.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/Pet.java @@ -22,7 +22,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.client.model.Category; import org.openapitools.client.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -50,7 +52,7 @@ public class Pet { private String name; public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; private List tags = null; @@ -170,7 +172,7 @@ public class Pet { } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; @@ -189,12 +191,12 @@ public class Pet { @JsonProperty(JSON_PROPERTY_PHOTO_URLS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/client/petstore/java/webclient/src/test/java/org/openapitools/client/api/PetApiTest.java b/samples/client/petstore/java/webclient/src/test/java/org/openapitools/client/api/PetApiTest.java index 463aec5a426..e33c0bb9796 100644 --- a/samples/client/petstore/java/webclient/src/test/java/org/openapitools/client/api/PetApiTest.java +++ b/samples/client/petstore/java/webclient/src/test/java/org/openapitools/client/api/PetApiTest.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Set; /** * API tests for PetApi @@ -80,7 +81,7 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() { - List tags = null; + Set tags = null; List response = api.findPetsByTags(tags).collectList().block(); // TODO: test validations diff --git a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApi.java index 2eda2bdbdfb..151dcac98ff 100644 --- a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApi.java @@ -10,6 +10,7 @@ import io.swagger.jaxrs.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -94,17 +95,17 @@ public class PetApi { @Path("/findByTags") @Produces({ "application/xml", "application/json" }) - @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @io.swagger.annotations.Authorization(value = "petstore_auth", scopes = { @io.swagger.annotations.AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @io.swagger.annotations.AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @io.swagger.annotations.ApiResponses(value = { - @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), - @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Pet.class, responseContainer = "List") }) - public Response findPetsByTags(@ApiParam(value = "Tags to filter by",required=true, defaultValue="new ArrayList()") @DefaultValue("new ArrayList()") @QueryParam("tags") List tags + @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Pet.class, responseContainer = "Set") }) + public Response findPetsByTags(@ApiParam(value = "Tags to filter by",required=true, defaultValue="new LinkedHashSet()") @DefaultValue("new LinkedHashSet()") @QueryParam("tags") Set tags ) throws NotFoundException { return delegate.findPetsByTags(tags); diff --git a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApiService.java b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApiService.java index c6635cfe24c..9d78c3935c7 100644 --- a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApiService.java +++ b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/api/PetApiService.java @@ -9,6 +9,7 @@ import org.wso2.msf4j.formparam.FileInfo; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -27,7 +28,7 @@ public abstract class PetApiService { ) throws NotFoundException; public abstract Response findPetsByStatus(List status ) throws NotFoundException; - public abstract Response findPetsByTags(List tags + public abstract Response findPetsByTags(Set tags ) throws NotFoundException; public abstract Response getPetById(Long petId ) throws NotFoundException; diff --git a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/Pet.java index 4a45c8ddac2..1b6018e3658 100644 --- a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; @@ -26,7 +28,7 @@ public class Pet { private String name; @JsonProperty("photoUrls") - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); @JsonProperty("tags") private List tags = null; @@ -121,7 +123,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -136,11 +138,11 @@ public class Pet { * @return photoUrls **/ @ApiModelProperty(required = true, value = "") - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/java-msf4j/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/java-msf4j/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index 272eec403dd..82f6698c376 100644 --- a/samples/server/petstore/java-msf4j/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/java-msf4j/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -6,6 +6,7 @@ import org.openapitools.model.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -40,7 +41,7 @@ public class PetApiServiceImpl extends PetApiService { return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } @Override - public Response findPetsByTags(List tags + public Response findPetsByTags(Set tags ) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); diff --git a/samples/server/petstore/java-pkmst/src/test/java/com/prokarma/pkmst/controller/PetApiTest.java b/samples/server/petstore/java-pkmst/src/test/java/com/prokarma/pkmst/controller/PetApiTest.java index b9108c2e37b..cabc4d78e85 100644 --- a/samples/server/petstore/java-pkmst/src/test/java/com/prokarma/pkmst/controller/PetApiTest.java +++ b/samples/server/petstore/java-pkmst/src/test/java/com/prokarma/pkmst/controller/PetApiTest.java @@ -52,7 +52,7 @@ public class PetApiTest { @Test public void addPetTest() throws Exception { Pet pet = null; - ResponseEntity response = api.addPet(pet , accept); + ResponseEntity response = api.addPet(pet , accept); // TODO: test validations } @@ -69,7 +69,7 @@ public class PetApiTest { public void deletePetTest() throws Exception { Long petId = null; String apiKey = null; - ResponseEntity response = api.deletePet(petId, apiKey , accept); + ResponseEntity response = api.deletePet(petId, apiKey , accept); // TODO: test validations } @@ -85,7 +85,7 @@ public class PetApiTest { @Test public void findPetsByStatusTest() throws Exception { List status = null; - ResponseEntity> response = api.findPetsByStatus(status , accept); + ResponseEntity> response = api.findPetsByStatus(status , accept); // TODO: test validations } @@ -101,7 +101,7 @@ public class PetApiTest { @Test public void findPetsByTagsTest() throws Exception { List tags = null; - ResponseEntity> response = api.findPetsByTags(tags , accept); + ResponseEntity> response = api.findPetsByTags(tags , accept); // TODO: test validations } @@ -117,7 +117,7 @@ public class PetApiTest { @Test public void getPetByIdTest() throws Exception { Long petId = null; - ResponseEntity response = api.getPetById(petId , accept); + ResponseEntity response = api.getPetById(petId , accept); // TODO: test validations } @@ -133,7 +133,7 @@ public class PetApiTest { @Test public void updatePetTest() throws Exception { Pet pet = null; - ResponseEntity response = api.updatePet(pet , accept); + ResponseEntity response = api.updatePet(pet , accept); // TODO: test validations } @@ -151,7 +151,7 @@ public class PetApiTest { Long petId = null; String name = null; String status = null; - ResponseEntity response = api.updatePetWithForm(petId, name, status , accept); + ResponseEntity response = api.updatePetWithForm(petId, name, status , accept); // TODO: test validations } @@ -169,7 +169,7 @@ public class PetApiTest { Long petId = null; String additionalMetadata = null; MultipartFile file = null; - ResponseEntity response = api.uploadFile(petId, additionalMetadata, file , accept); + ResponseEntity response = api.uploadFile(petId, additionalMetadata, file , accept); // TODO: test validations } diff --git a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiController.java b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiController.java index 253f6e33751..3ae905dcd44 100644 --- a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiController.java +++ b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -73,7 +74,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -97,7 +98,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiControllerImp.java index 8b6dde9c2d1..45c8a8ddb51 100644 --- a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiController.java b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiController.java index 225d3009543..20019cb4f1f 100644 --- a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiControllerImp.java index fe2cf4f6808..aa29cbafda4 100644 --- a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiController.java b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiController.java index 5e103c7eeb6..6b6c7a2664c 100644 --- a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiController.java +++ b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiControllerImp.java index d53c2a82c11..844b2c29575 100644 --- a/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-api-package-override/app/com/puppies/store/apis/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-async/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-async/app/controllers/PetApiController.java index ef66614c27d..da9485f9966 100644 --- a/samples/server/petstore/java-play-framework-async/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-async/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -80,7 +81,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -108,7 +109,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-async/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-async/app/controllers/PetApiControllerImp.java index 550cb371435..ef1056ebacc 100644 --- a/samples/server/petstore/java-play-framework-async/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-async/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiController.java index 257e0f0e332..eae5b3e937a 100644 --- a/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiControllerImp.java index 2d7cea1cf01..e3be6aab57b 100644 --- a/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-async/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-async/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-async/app/controllers/UserApiController.java index d003410d26f..7d62582460f 100644 --- a/samples/server/petstore/java-play-framework-async/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-async/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-async/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-async/app/controllers/UserApiControllerImp.java index fa6028517c0..a32a9ffd7d0 100644 --- a/samples/server/petstore/java-play-framework-async/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-async/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-controller-only/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-controller-only/app/controllers/PetApiController.java index c00e111435b..758fe2ddaf4 100644 --- a/samples/server/petstore/java-play-framework-controller-only/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-controller-only/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -69,7 +70,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -86,7 +87,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-controller-only/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-controller-only/app/controllers/StoreApiController.java index c6b50d59972..007892d9b48 100644 --- a/samples/server/petstore/java-play-framework-controller-only/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-controller-only/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-controller-only/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-controller-only/app/controllers/UserApiController.java index 9886a7b377a..6ef0d5970fa 100644 --- a/samples/server/petstore/java-play-framework-controller-only/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-controller-only/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/Pet.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/Pet.java index cf7ff2912d9..040f1bbb30b 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/Pet.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/Pet.java @@ -3,7 +3,9 @@ package apimodels; import apimodels.Category; import apimodels.Tag; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import com.fasterxml.jackson.annotation.*; import java.util.Set; import javax.validation.*; @@ -25,7 +27,7 @@ public class Pet { private String name; @JsonProperty("photoUrls") - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") private List tags = null; @@ -119,7 +121,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -134,11 +136,11 @@ public class Pet { * @return photoUrls **/ @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiController.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiController.java index aa22bcb3ff8..40a495cf697 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiController.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiController.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiControllerImp.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiControllerImp.java index cb14f49165c..c6219faf1f8 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/AnotherFakeApiControllerImp.java @@ -6,6 +6,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiController.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiController.java index 508aacee714..59733b8c58b 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiController.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiController.java @@ -17,6 +17,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -295,7 +296,7 @@ public class FakeApiController extends Controller { public Result testEnumParameters() throws Exception { String[] enumQueryStringArrayArray = request().queryString().get("enum_query_string_array"); List enumQueryStringArrayList = OpenAPIUtils.parametersToList("csv", enumQueryStringArrayArray); - List enumQueryStringArray = new ArrayList(); + List enumQueryStringArray = new ArrayList<>(); for (String curParam : enumQueryStringArrayList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -325,7 +326,7 @@ public class FakeApiController extends Controller { } String[] enumFormStringArrayArray = request().body().asMultipartFormData().asFormUrlEncoded().get("enum_form_string_array"); List enumFormStringArrayList = OpenAPIUtils.parametersToList("csv", enumFormStringArrayArray); - List enumFormStringArray = new ArrayList(); + List enumFormStringArray = new ArrayList<>(); for (String curParam : enumFormStringArrayList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -341,7 +342,7 @@ public class FakeApiController extends Controller { } String[] enumHeaderStringArrayArray = request().headers().get("enum_header_string_array"); List enumHeaderStringArrayList = OpenAPIUtils.parametersToList("csv", enumHeaderStringArrayArray); - List enumHeaderStringArray = new ArrayList(); + List enumHeaderStringArray = new ArrayList<>(); for (String curParam : enumHeaderStringArrayList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -452,7 +453,7 @@ public class FakeApiController extends Controller { throw new IllegalArgumentException("'pipe' parameter is required"); } List pipeList = OpenAPIUtils.parametersToList("csv", pipeArray); - List pipe = new ArrayList(); + List pipe = new ArrayList<>(); for (String curParam : pipeList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -464,7 +465,7 @@ public class FakeApiController extends Controller { throw new IllegalArgumentException("'ioutil' parameter is required"); } List ioutilList = OpenAPIUtils.parametersToList("csv", ioutilArray); - List ioutil = new ArrayList(); + List ioutil = new ArrayList<>(); for (String curParam : ioutilList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -476,7 +477,7 @@ public class FakeApiController extends Controller { throw new IllegalArgumentException("'http' parameter is required"); } List httpList = OpenAPIUtils.parametersToList("space", httpArray); - List http = new ArrayList(); + List http = new ArrayList<>(); for (String curParam : httpList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -488,7 +489,7 @@ public class FakeApiController extends Controller { throw new IllegalArgumentException("'url' parameter is required"); } List urlList = OpenAPIUtils.parametersToList("csv", urlArray); - List url = new ArrayList(); + List url = new ArrayList<>(); for (String curParam : urlList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -500,7 +501,7 @@ public class FakeApiController extends Controller { throw new IllegalArgumentException("'context' parameter is required"); } List contextList = OpenAPIUtils.parametersToList("multi", contextArray); - List context = new ArrayList(); + List context = new ArrayList<>(); for (String curParam : contextList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiControllerImp.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiControllerImp.java index d50832ef3b1..eb70b4c105a 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeApiControllerImp.java @@ -15,6 +15,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiController.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiController.java index 760b0a39416..f562306b210 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiController.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiController.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiControllerImp.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiControllerImp.java index 7d18dc42afb..0476f1f6fd8 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/FakeClassnameTags123ApiControllerImp.java @@ -6,6 +6,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiController.java index e4427543e64..8c6b6817ea2 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiController.java @@ -3,6 +3,7 @@ package controllers; import java.io.InputStream; import apimodels.ModelApiResponse; import apimodels.Pet; +import java.util.Set; import play.mvc.Controller; import play.mvc.Result; @@ -10,6 +11,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -73,7 +75,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -97,14 +99,14 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + Set tags = new LinkedHashSet<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation tags.add(curParam); } } - List obj = imp.findPetsByTags(tags); + Set obj = imp.findPetsByTags(tags); if (configuration.getBoolean("useOutputBeanValidation")) { for (Pet curItem : obj) { OpenAPIUtils.validate(curItem); diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImp.java index 3d028b31863..7f50baee48a 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImp.java @@ -3,11 +3,13 @@ package controllers; import java.io.InputStream; import apimodels.ModelApiResponse; import apimodels.Pet; +import java.util.Set; import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; @@ -29,9 +31,9 @@ public class PetApiControllerImp implements PetApiControllerImpInterface { } @Override - public List findPetsByTags( @NotNull List tags) throws Exception { + public Set findPetsByTags( @NotNull Set tags) throws Exception { //Do your magic!!! - return new ArrayList(); + return new LinkedHashSet(); } @Override diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImpInterface.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImpInterface.java index a6c88443756..77a658334b2 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImpInterface.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/PetApiControllerImpInterface.java @@ -3,6 +3,7 @@ package controllers; import java.io.InputStream; import apimodels.ModelApiResponse; import apimodels.Pet; +import java.util.Set; import play.mvc.Http; import java.util.List; @@ -19,7 +20,7 @@ public interface PetApiControllerImpInterface { List findPetsByStatus( @NotNull List status) throws Exception; - List findPetsByTags( @NotNull List tags) throws Exception; + Set findPetsByTags( @NotNull Set tags) throws Exception; Pet getPetById(Long petId) throws Exception; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiController.java index 831f15dfe3c..deb55e4b2f0 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiControllerImp.java index 7c57d3d096c..1e3c4774e97 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiController.java index aa3bbd80ba1..45d4dcca32f 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiControllerImp.java index 0ea7a808b9a..cf9ab91ff6e 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json b/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json index edbfa20608b..ebe044bed92 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json +++ b/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json @@ -177,7 +177,8 @@ "items" : { "type" : "string" }, - "type" : "array" + "type" : "array", + "uniqueItems" : true }, "style" : "form" } ], @@ -189,7 +190,8 @@ "items" : { "$ref" : "#/components/schemas/Pet" }, - "type" : "array" + "type" : "array", + "uniqueItems" : true } }, "application/json" : { @@ -197,7 +199,8 @@ "items" : { "$ref" : "#/components/schemas/Pet" }, - "type" : "array" + "type" : "array", + "uniqueItems" : true } } }, @@ -1797,6 +1800,7 @@ "type" : "string" }, "type" : "array", + "uniqueItems" : true, "xml" : { "name" : "photoUrl", "wrapped" : true diff --git a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiController.java index 1fa710bf5bc..90a6c1e21d0 100644 --- a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -66,7 +67,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -85,7 +86,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiControllerImp.java index ed9b151a238..76098b8df12 100644 --- a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; public class PetApiControllerImp implements PetApiControllerImpInterface { diff --git a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiController.java index 029baa761df..0b6e428ab55 100644 --- a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiControllerImp.java index b0d2d8f88a1..927150ecdc4 100644 --- a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; public class StoreApiControllerImp implements StoreApiControllerImpInterface { diff --git a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiController.java index 9b78e828229..e5a73524b61 100644 --- a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiControllerImp.java index 8bf12fe7c82..95c462d23fc 100644 --- a/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-bean-validation/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; public class UserApiControllerImp implements UserApiControllerImpInterface { diff --git a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiController.java index f94630bf20c..2da81d59b23 100644 --- a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -74,7 +75,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -98,7 +99,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiControllerImp.java index e8d4a8b504a..0e10dc5b012 100644 --- a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiController.java index 0836d1945e2..a6b0f9d4012 100644 --- a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiControllerImp.java index 6406ee40e1f..5bb27ec6c59 100644 --- a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiController.java index 07e8f831618..a56e39b5d79 100644 --- a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiControllerImp.java index a6a588b6c8e..f4381eb16ec 100644 --- a/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-exception-handling/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiController.java index dc9fa0cbbdf..78f2dc15baf 100644 --- a/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -73,7 +74,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -97,7 +98,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiControllerImp.java index 3af35ea5303..72d2e76c437 100644 --- a/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-interface/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiController.java index db21a0523d9..24548ab65d8 100644 --- a/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiControllerImp.java index 119afe97fbf..2bc751fb4d6 100644 --- a/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-interface/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiController.java index d4365213a67..162d47bf634 100644 --- a/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiControllerImp.java index 569811fe095..03c8290dd60 100644 --- a/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-interface/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiController.java index 1344ffe7afb..99c053d0a8f 100644 --- a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -73,7 +74,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -97,7 +98,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiControllerImp.java index c025993f7c1..b228698b702 100644 --- a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiController.java index 831f15dfe3c..deb55e4b2f0 100644 --- a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiControllerImp.java index 7c57d3d096c..1e3c4774e97 100644 --- a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiController.java index aa3bbd80ba1..45d4dcca32f 100644 --- a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiControllerImp.java index 0ea7a808b9a..cf9ab91ff6e 100644 --- a/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-swagger-ui/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiController.java index 9059f7e2d91..4a3f756111b 100644 --- a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -72,7 +73,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -96,7 +97,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiControllerImp.java index c025993f7c1..b228698b702 100644 --- a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiController.java index da1876d0b99..84ce1f3ae3e 100644 --- a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiControllerImp.java index 7c57d3d096c..1e3c4774e97 100644 --- a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiController.java index 6bb02042260..65a000b663c 100644 --- a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiControllerImp.java index 0ea7a808b9a..cf9ab91ff6e 100644 --- a/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework-no-wrap-calls/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework/app/controllers/PetApiController.java b/samples/server/petstore/java-play-framework/app/controllers/PetApiController.java index 1344ffe7afb..99c053d0a8f 100644 --- a/samples/server/petstore/java-play-framework/app/controllers/PetApiController.java +++ b/samples/server/petstore/java-play-framework/app/controllers/PetApiController.java @@ -10,6 +10,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; @@ -73,7 +74,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'status' parameter is required"); } List statusList = OpenAPIUtils.parametersToList("csv", statusArray); - List status = new ArrayList(); + List status = new ArrayList<>(); for (String curParam : statusList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation @@ -97,7 +98,7 @@ public class PetApiController extends Controller { throw new IllegalArgumentException("'tags' parameter is required"); } List tagsList = OpenAPIUtils.parametersToList("csv", tagsArray); - List tags = new ArrayList(); + List tags = new ArrayList<>(); for (String curParam : tagsList) { if (!curParam.isEmpty()) { //noinspection UseBulkOperation diff --git a/samples/server/petstore/java-play-framework/app/controllers/PetApiControllerImp.java b/samples/server/petstore/java-play-framework/app/controllers/PetApiControllerImp.java index c025993f7c1..b228698b702 100644 --- a/samples/server/petstore/java-play-framework/app/controllers/PetApiControllerImp.java +++ b/samples/server/petstore/java-play-framework/app/controllers/PetApiControllerImp.java @@ -8,6 +8,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework/app/controllers/StoreApiController.java b/samples/server/petstore/java-play-framework/app/controllers/StoreApiController.java index 831f15dfe3c..deb55e4b2f0 100644 --- a/samples/server/petstore/java-play-framework/app/controllers/StoreApiController.java +++ b/samples/server/petstore/java-play-framework/app/controllers/StoreApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework/app/controllers/StoreApiControllerImp.java b/samples/server/petstore/java-play-framework/app/controllers/StoreApiControllerImp.java index 7c57d3d096c..1e3c4774e97 100644 --- a/samples/server/petstore/java-play-framework/app/controllers/StoreApiControllerImp.java +++ b/samples/server/petstore/java-play-framework/app/controllers/StoreApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/java-play-framework/app/controllers/UserApiController.java b/samples/server/petstore/java-play-framework/app/controllers/UserApiController.java index aa3bbd80ba1..45d4dcca32f 100644 --- a/samples/server/petstore/java-play-framework/app/controllers/UserApiController.java +++ b/samples/server/petstore/java-play-framework/app/controllers/UserApiController.java @@ -9,6 +9,7 @@ import play.mvc.Http; import java.util.List; import java.util.Map; import java.util.ArrayList; +import java.util.LinkedHashSet; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.google.inject.Inject; diff --git a/samples/server/petstore/java-play-framework/app/controllers/UserApiControllerImp.java b/samples/server/petstore/java-play-framework/app/controllers/UserApiControllerImp.java index 0ea7a808b9a..cf9ab91ff6e 100644 --- a/samples/server/petstore/java-play-framework/app/controllers/UserApiControllerImp.java +++ b/samples/server/petstore/java-play-framework/app/controllers/UserApiControllerImp.java @@ -7,6 +7,7 @@ import play.mvc.Http; import java.util.List; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedHashSet; import java.io.FileInputStream; import javax.validation.constraints.*; diff --git a/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/api/PetApi.java index 7c9b45495e0..51d9b79c80d 100644 --- a/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/api/PetApi.java @@ -3,6 +3,7 @@ package org.openapitools.api; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.io.InputStream; import java.io.OutputStream; @@ -82,9 +83,9 @@ public interface PetApi { @Produces({ "application/xml", "application/json" }) @ApiOperation(value = "Finds Pets by tags", tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) - public List findPetsByTags(@QueryParam("tags") @NotNull List tags); + public Set findPetsByTags(@QueryParam("tags") @NotNull Set tags); /** * Find pet by ID diff --git a/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/Pet.java index 3042dd05648..52b6814fc24 100644 --- a/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/Pet.java @@ -1,7 +1,9 @@ package org.openapitools.model; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import javax.validation.constraints.*; @@ -30,7 +32,7 @@ public class Pet { private String name; @ApiModelProperty(required = true, value = "") - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); @ApiModelProperty(value = "") @Valid @@ -134,15 +136,15 @@ public enum StatusEnum { **/ @JsonProperty("photoUrls") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } diff --git a/samples/server/petstore/jaxrs-cxf/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/jaxrs-cxf/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index f58a97994e1..d6c02584e37 100644 --- a/samples/server/petstore/jaxrs-cxf/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/jaxrs-cxf/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -4,6 +4,7 @@ import org.openapitools.api.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.io.InputStream; import java.io.OutputStream; @@ -63,7 +64,7 @@ public class PetApiServiceImpl implements PetApi { * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. * */ - public List findPetsByTags(List tags) { + public Set findPetsByTags(Set tags) { // TODO: Implement... return null; diff --git a/samples/server/petstore/jaxrs-cxf/src/test/java/org/openapitools/api/PetApiTest.java b/samples/server/petstore/jaxrs-cxf/src/test/java/org/openapitools/api/PetApiTest.java index 265416d6e4a..583edd073b3 100644 --- a/samples/server/petstore/jaxrs-cxf/src/test/java/org/openapitools/api/PetApiTest.java +++ b/samples/server/petstore/jaxrs-cxf/src/test/java/org/openapitools/api/PetApiTest.java @@ -28,6 +28,7 @@ package org.openapitools.api; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import org.junit.Test; import org.junit.Before; import static org.junit.Assert.*; @@ -134,8 +135,8 @@ public class PetApiTest { */ @Test public void findPetsByTagsTest() { - List tags = null; - //List response = api.findPetsByTags(tags); + Set tags = null; + //Set response = api.findPetsByTags(tags); //assertNotNull(response); // TODO: test validations diff --git a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApi.java index 782ed5b4157..34acf0291b3 100644 --- a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApi.java @@ -10,6 +10,7 @@ import io.swagger.jaxrs.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.Map; import java.util.List; @@ -119,17 +120,17 @@ public class PetApi { @Path("/findByTags") @Produces({ "application/xml", "application/json" }) - @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @io.swagger.annotations.Authorization(value = "petstore_auth", scopes = { @io.swagger.annotations.AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @io.swagger.annotations.AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @io.swagger.annotations.ApiResponses(value = { - @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Void.class) }) - public Response findPetsByTags(@ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid List tags + public Response findPetsByTags(@ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid Set tags ,@Context SecurityContext securityContext) throws NotFoundException { return delegate.findPetsByTags(tags, securityContext); diff --git a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApiService.java b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApiService.java index a51e840bba5..23f19066416 100644 --- a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApiService.java +++ b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/api/PetApiService.java @@ -8,6 +8,7 @@ import org.glassfish.jersey.media.multipart.FormDataContentDisposition; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -22,7 +23,7 @@ public abstract class PetApiService { public abstract Response addPet(Pet body,SecurityContext securityContext) throws NotFoundException; public abstract Response deletePet(Long petId,String apiKey,SecurityContext securityContext) throws NotFoundException; public abstract Response findPetsByStatus( @NotNull List status,SecurityContext securityContext) throws NotFoundException; - public abstract Response findPetsByTags( @NotNull List tags,SecurityContext securityContext) throws NotFoundException; + public abstract Response findPetsByTags( @NotNull Set tags,SecurityContext securityContext) throws NotFoundException; public abstract Response getPetById(Long petId,SecurityContext securityContext) throws NotFoundException; public abstract Response updatePet(Pet body,SecurityContext securityContext) throws NotFoundException; public abstract Response updatePetWithForm(Long petId,String name,String status,SecurityContext securityContext) throws NotFoundException; diff --git a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/Pet.java index 9c7856935f8..7b0c77c9ebc 100644 --- a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/Pet.java @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -55,7 +57,7 @@ public class Pet implements Serializable { public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; @JsonProperty(JSON_PROPERTY_PHOTO_URLS) - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); public static final String JSON_PROPERTY_TAGS = "tags"; @JsonProperty(JSON_PROPERTY_TAGS) @@ -158,7 +160,7 @@ public class Pet implements Serializable { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -175,11 +177,11 @@ public class Pet implements Serializable { @JsonProperty("photoUrls") @ApiModelProperty(required = true, value = "") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/jaxrs-datelib-j8/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/jaxrs-datelib-j8/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index 4fe468d6787..168693768dd 100644 --- a/samples/server/petstore/jaxrs-datelib-j8/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/jaxrs-datelib-j8/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -6,6 +6,7 @@ import org.openapitools.model.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -35,7 +36,7 @@ public class PetApiServiceImpl extends PetApiService { return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } @Override - public Response findPetsByTags( @NotNull List tags, SecurityContext securityContext) throws NotFoundException { + public Response findPetsByTags( @NotNull Set tags, SecurityContext securityContext) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } diff --git a/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/api/PetApi.java index ee49bb3f728..72899f7a4fe 100644 --- a/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/api/PetApi.java @@ -3,6 +3,7 @@ package org.openapitools.api; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import javax.ws.rs.*; import javax.ws.rs.core.Response; @@ -69,9 +70,9 @@ public interface PetApi { }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), - @ApiResponse(code = 400, message = "Invalid tag value", response = Void.class, responseContainer = "List") }) - List findPetsByTags(@QueryParam("tags") @NotNull @ApiParam("Tags to filter by") List tags); + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), + @ApiResponse(code = 400, message = "Invalid tag value", response = Void.class, responseContainer = "Set") }) + Set findPetsByTags(@QueryParam("tags") @NotNull @ApiParam("Tags to filter by") Set tags); @GET @Path("/{petId}") diff --git a/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/Pet.java index 950ddb1ac08..1e5670cd39d 100644 --- a/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/Pet.java @@ -3,7 +3,9 @@ package org.openapitools.model; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import java.io.Serializable; @@ -23,7 +25,7 @@ public class Pet implements Serializable { private @Valid Long id; private @Valid Category category; private @Valid String name; - private @Valid List photoUrls = new ArrayList(); + private @Valid Set photoUrls = new LinkedHashSet(); private @Valid List tags = new ArrayList(); public enum StatusEnum { @@ -117,7 +119,7 @@ public enum StatusEnum { this.name = name; }/** **/ - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -128,11 +130,11 @@ public enum StatusEnum { @ApiModelProperty(required = true, value = "") @JsonProperty("photoUrls") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; }/** **/ diff --git a/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml b/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml index f6f5c60294f..da95378bbc8 100644 --- a/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml +++ b/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml @@ -150,6 +150,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -159,11 +160,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1458,6 +1461,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/api/PetApi.java index 9d6b3584ef8..a890a8764b9 100644 --- a/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/api/PetApi.java @@ -3,6 +3,7 @@ package org.openapitools.api; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import javax.ws.rs.*; import javax.ws.rs.core.Response; @@ -71,17 +72,17 @@ public class PetApi { @GET @Path("/findByTags") @Produces({ "application/xml", "application/json" }) - @ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value", response = Void.class) }) - public Response findPetsByTags(@QueryParam("tags") @NotNull @ApiParam("Tags to filter by") List tags) { + public Response findPetsByTags(@QueryParam("tags") @NotNull @ApiParam("Tags to filter by") Set tags) { return Response.ok().entity("magic!").build(); } diff --git a/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/Pet.java index 950ddb1ac08..1e5670cd39d 100644 --- a/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/Pet.java @@ -3,7 +3,9 @@ package org.openapitools.model; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import java.io.Serializable; @@ -23,7 +25,7 @@ public class Pet implements Serializable { private @Valid Long id; private @Valid Category category; private @Valid String name; - private @Valid List photoUrls = new ArrayList(); + private @Valid Set photoUrls = new LinkedHashSet(); private @Valid List tags = new ArrayList(); public enum StatusEnum { @@ -117,7 +119,7 @@ public enum StatusEnum { this.name = name; }/** **/ - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -128,11 +130,11 @@ public enum StatusEnum { @ApiModelProperty(required = true, value = "") @JsonProperty("photoUrls") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; }/** **/ diff --git a/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml b/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml index f6f5c60294f..da95378bbc8 100644 --- a/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml +++ b/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml @@ -150,6 +150,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -159,11 +160,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1458,6 +1461,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApi.java index 64c45c3b9aa..28144817d14 100644 --- a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApi.java @@ -10,6 +10,7 @@ import io.swagger.jaxrs.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.Map; import java.util.List; @@ -97,17 +98,17 @@ public class PetApi { @Path("/pet/findByTags") @Produces({ "application/xml", "application/json" }) - @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @io.swagger.annotations.Authorization(value = "petstore_auth", scopes = { @io.swagger.annotations.AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @io.swagger.annotations.AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @io.swagger.annotations.ApiResponses(value = { - @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Void.class) }) public Response findPetsByTags( - @ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid List tags, + @ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid Set tags, @Context SecurityContext securityContext) throws NotFoundException { return delegate.findPetsByTags(tags,securityContext); diff --git a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApiService.java b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApiService.java index e230cb93194..26ad8543c82 100644 --- a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApiService.java +++ b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/api/PetApiService.java @@ -8,6 +8,7 @@ import com.sun.jersey.multipart.FormDataParam; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -28,7 +29,7 @@ public abstract class PetApiService { throws NotFoundException; public abstract Response findPetsByStatus( @NotNull List status,SecurityContext securityContext) throws NotFoundException; - public abstract Response findPetsByTags( @NotNull List tags,SecurityContext securityContext) + public abstract Response findPetsByTags( @NotNull Set tags,SecurityContext securityContext) throws NotFoundException; public abstract Response getPetById(Long petId,SecurityContext securityContext) throws NotFoundException; diff --git a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/Pet.java index 29963f3d63b..3ba558b701b 100644 --- a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/Pet.java @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -54,7 +56,7 @@ public class Pet { public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; @JsonProperty(JSON_PROPERTY_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; @JsonProperty(JSON_PROPERTY_TAGS) @@ -157,7 +159,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -174,11 +176,11 @@ public class Pet { @JsonProperty("photoUrls") @ApiModelProperty(required = true, value = "") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/jaxrs/jersey1-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/jaxrs/jersey1-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index 0961ee570af..609b3420af2 100644 --- a/samples/server/petstore/jaxrs/jersey1-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/jaxrs/jersey1-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -8,6 +8,7 @@ import com.sun.jersey.multipart.FormDataParam; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -41,7 +42,7 @@ public class PetApiServiceImpl extends PetApiService { return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } @Override - public Response findPetsByTags( @NotNull List tags, SecurityContext securityContext) + public Response findPetsByTags( @NotNull Set tags, SecurityContext securityContext) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); diff --git a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApi.java index cde1c244287..88356683347 100644 --- a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApi.java @@ -10,6 +10,7 @@ import io.swagger.jaxrs.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.Map; import java.util.List; @@ -97,17 +98,17 @@ public class PetApi { @Path("/findByTags") @Produces({ "application/xml", "application/json" }) - @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @io.swagger.annotations.Authorization(value = "petstore_auth", scopes = { @io.swagger.annotations.AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @io.swagger.annotations.AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @io.swagger.annotations.ApiResponses(value = { - @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Void.class) }) public Response findPetsByTags( - @ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid List tags, + @ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid Set tags, @Context SecurityContext securityContext) throws NotFoundException { return delegate.findPetsByTags(tags,securityContext); diff --git a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApiService.java b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApiService.java index 93a3c1c79dd..bddeca287df 100644 --- a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApiService.java +++ b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/api/PetApiService.java @@ -8,6 +8,7 @@ import com.sun.jersey.multipart.FormDataParam; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -28,7 +29,7 @@ public abstract class PetApiService { throws NotFoundException; public abstract Response findPetsByStatus( @NotNull List status,SecurityContext securityContext) throws NotFoundException; - public abstract Response findPetsByTags( @NotNull List tags,SecurityContext securityContext) + public abstract Response findPetsByTags( @NotNull Set tags,SecurityContext securityContext) throws NotFoundException; public abstract Response getPetById(Long petId,SecurityContext securityContext) throws NotFoundException; diff --git a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/Pet.java index 29963f3d63b..3ba558b701b 100644 --- a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/Pet.java @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -54,7 +56,7 @@ public class Pet { public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; @JsonProperty(JSON_PROPERTY_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; @JsonProperty(JSON_PROPERTY_TAGS) @@ -157,7 +159,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -174,11 +176,11 @@ public class Pet { @JsonProperty("photoUrls") @ApiModelProperty(required = true, value = "") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/jaxrs/jersey1/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/jaxrs/jersey1/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index fa3ece8bce5..f2dc8431754 100644 --- a/samples/server/petstore/jaxrs/jersey1/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/jaxrs/jersey1/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -8,6 +8,7 @@ import com.sun.jersey.multipart.FormDataParam; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -41,7 +42,7 @@ public class PetApiServiceImpl extends PetApiService { return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } @Override - public Response findPetsByTags( @NotNull List tags, SecurityContext securityContext) + public Response findPetsByTags( @NotNull Set tags, SecurityContext securityContext) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); diff --git a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApi.java index d4947d0538a..82f486dab96 100644 --- a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApi.java @@ -10,6 +10,7 @@ import io.swagger.jaxrs.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.Map; import java.util.List; @@ -119,17 +120,17 @@ public class PetApi { @Path("/pet/findByTags") @Produces({ "application/xml", "application/json" }) - @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @io.swagger.annotations.Authorization(value = "petstore_auth", scopes = { @io.swagger.annotations.AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @io.swagger.annotations.AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @io.swagger.annotations.ApiResponses(value = { - @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Void.class) }) - public Response findPetsByTags(@ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid List tags + public Response findPetsByTags(@ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid Set tags ,@Context SecurityContext securityContext) throws NotFoundException { return delegate.findPetsByTags(tags, securityContext); diff --git a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApiService.java b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApiService.java index 54ad9f5c9a4..76db01fa359 100644 --- a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApiService.java +++ b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/api/PetApiService.java @@ -8,6 +8,7 @@ import org.glassfish.jersey.media.multipart.FormDataContentDisposition; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -22,7 +23,7 @@ public abstract class PetApiService { public abstract Response addPet(Pet body,SecurityContext securityContext) throws NotFoundException; public abstract Response deletePet(Long petId,String apiKey,SecurityContext securityContext) throws NotFoundException; public abstract Response findPetsByStatus( @NotNull List status,SecurityContext securityContext) throws NotFoundException; - public abstract Response findPetsByTags( @NotNull List tags,SecurityContext securityContext) throws NotFoundException; + public abstract Response findPetsByTags( @NotNull Set tags,SecurityContext securityContext) throws NotFoundException; public abstract Response getPetById(Long petId,SecurityContext securityContext) throws NotFoundException; public abstract Response updatePet(Pet body,SecurityContext securityContext) throws NotFoundException; public abstract Response updatePetWithForm(Long petId,String name,String status,SecurityContext securityContext) throws NotFoundException; diff --git a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/Pet.java index 29963f3d63b..3ba558b701b 100644 --- a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/Pet.java @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -54,7 +56,7 @@ public class Pet { public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; @JsonProperty(JSON_PROPERTY_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; @JsonProperty(JSON_PROPERTY_TAGS) @@ -157,7 +159,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -174,11 +176,11 @@ public class Pet { @JsonProperty("photoUrls") @ApiModelProperty(required = true, value = "") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/jaxrs/jersey2-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/jaxrs/jersey2-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index fdd548f79e5..0e22a567317 100644 --- a/samples/server/petstore/jaxrs/jersey2-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/jaxrs/jersey2-useTags/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -6,6 +6,7 @@ import org.openapitools.model.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -35,7 +36,7 @@ public class PetApiServiceImpl extends PetApiService { return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } @Override - public Response findPetsByTags( @NotNull List tags, SecurityContext securityContext) throws NotFoundException { + public Response findPetsByTags( @NotNull Set tags, SecurityContext securityContext) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } diff --git a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApi.java b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApi.java index 782ed5b4157..34acf0291b3 100644 --- a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApi.java @@ -10,6 +10,7 @@ import io.swagger.jaxrs.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.Map; import java.util.List; @@ -119,17 +120,17 @@ public class PetApi { @Path("/findByTags") @Produces({ "application/xml", "application/json" }) - @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @io.swagger.annotations.ApiOperation(value = "Finds Pets by tags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @io.swagger.annotations.Authorization(value = "petstore_auth", scopes = { @io.swagger.annotations.AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @io.swagger.annotations.AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @io.swagger.annotations.ApiResponses(value = { - @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @io.swagger.annotations.ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @io.swagger.annotations.ApiResponse(code = 400, message = "Invalid tag value", response = Void.class) }) - public Response findPetsByTags(@ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid List tags + public Response findPetsByTags(@ApiParam(value = "Tags to filter by", required = true) @QueryParam("tags") @NotNull @Valid Set tags ,@Context SecurityContext securityContext) throws NotFoundException { return delegate.findPetsByTags(tags, securityContext); diff --git a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApiService.java b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApiService.java index a51e840bba5..23f19066416 100644 --- a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApiService.java +++ b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/api/PetApiService.java @@ -8,6 +8,7 @@ import org.glassfish.jersey.media.multipart.FormDataContentDisposition; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -22,7 +23,7 @@ public abstract class PetApiService { public abstract Response addPet(Pet body,SecurityContext securityContext) throws NotFoundException; public abstract Response deletePet(Long petId,String apiKey,SecurityContext securityContext) throws NotFoundException; public abstract Response findPetsByStatus( @NotNull List status,SecurityContext securityContext) throws NotFoundException; - public abstract Response findPetsByTags( @NotNull List tags,SecurityContext securityContext) throws NotFoundException; + public abstract Response findPetsByTags( @NotNull Set tags,SecurityContext securityContext) throws NotFoundException; public abstract Response getPetById(Long petId,SecurityContext securityContext) throws NotFoundException; public abstract Response updatePet(Pet body,SecurityContext securityContext) throws NotFoundException; public abstract Response updatePetWithForm(Long petId,String name,String status,SecurityContext securityContext) throws NotFoundException; diff --git a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/Pet.java b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/Pet.java index 29963f3d63b..3ba558b701b 100644 --- a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/Pet.java @@ -20,7 +20,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -54,7 +56,7 @@ public class Pet { public static final String JSON_PROPERTY_PHOTO_URLS = "photoUrls"; @JsonProperty(JSON_PROPERTY_PHOTO_URLS) - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); public static final String JSON_PROPERTY_TAGS = "tags"; @JsonProperty(JSON_PROPERTY_TAGS) @@ -157,7 +159,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -174,11 +176,11 @@ public class Pet { @JsonProperty("photoUrls") @ApiModelProperty(required = true, value = "") @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/jaxrs/jersey2/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java b/samples/server/petstore/jaxrs/jersey2/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java index 4fe468d6787..168693768dd 100644 --- a/samples/server/petstore/jaxrs/jersey2/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java +++ b/samples/server/petstore/jaxrs/jersey2/src/main/java/org/openapitools/api/impl/PetApiServiceImpl.java @@ -6,6 +6,7 @@ import org.openapitools.model.*; import java.io.File; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; +import java.util.Set; import java.util.List; import org.openapitools.api.NotFoundException; @@ -35,7 +36,7 @@ public class PetApiServiceImpl extends PetApiService { return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } @Override - public Response findPetsByTags( @NotNull List tags, SecurityContext securityContext) throws NotFoundException { + public Response findPetsByTags( @NotNull Set tags, SecurityContext securityContext) throws NotFoundException { // do some magic! return Response.ok().entity(new ApiResponseMessage(ApiResponseMessage.OK, "magic!")).build(); } diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/api/PetApi.java index cf4d7ab3258..1657d3098a4 100644 --- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -140,19 +141,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default CompletableFuture>> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default CompletableFuture>> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { return CompletableFuture.supplyAsync(()-> { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/api/PetApi.java index 7ada48d2e87..4349917e116 100644 --- a/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -137,19 +138,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { diff --git a/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApi.java index 7578f807f7f..7a9b6e56cc4 100644 --- a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; @@ -106,19 +107,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags); + ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags); /** diff --git a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApiController.java b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApiController.java index 4e8f71e62e2..22d0330c63f 100644 --- a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApiController.java +++ b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/api/PetApiController.java @@ -3,6 +3,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -97,7 +98,7 @@ public class PetApiController implements PetApi { * @deprecated * @see PetApi#findPetsByTags */ - public ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + public ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { String exampleString = "{ \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ], \"name\" : \"doggie\", \"id\" : 0, \"category\" : { \"name\" : \"default-name\", \"id\" : 6 }, \"tags\" : [ { \"name\" : \"name\", \"id\" : 1 }, { \"name\" : \"name\", \"id\" : 1 } ], \"status\" : \"available\" }"; diff --git a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/Pet.java index e91bc5697c7..3e66cbdb75d 100644 --- a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApi.java index 7578f807f7f..7a9b6e56cc4 100644 --- a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; @@ -106,19 +107,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags); + ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags); /** diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApiController.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApiController.java index d46089e360c..e6ffc7d6653 100644 --- a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApiController.java +++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/api/PetApiController.java @@ -3,6 +3,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -97,7 +98,7 @@ public class PetApiController implements PetApi { * @deprecated * @see PetApi#findPetsByTags */ - public ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + public ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { String exampleString = "{ \"photoUrls\" : [ \"photoUrls\", \"photoUrls\" ], \"name\" : \"doggie\", \"id\" : 0, \"category\" : { \"name\" : \"default-name\", \"id\" : 6 }, \"tags\" : [ { \"name\" : \"name\", \"id\" : 1 }, { \"name\" : \"name\", \"id\" : 1 } ], \"status\" : \"available\" }"; diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Pet.java index e91bc5697c7..3e66cbdb75d 100644 --- a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApi.java index 6c12102debf..0ac0d186bb5 100644 --- a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; @@ -116,19 +117,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { return getDelegate().findPetsByTags(tags); } diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApiDelegate.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApiDelegate.java index 44d7d779d04..c8b6b0ad5ef 100644 --- a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApiDelegate.java +++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/api/PetApiDelegate.java @@ -3,6 +3,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -91,7 +92,7 @@ public interface PetApiDelegate { * @deprecated * @see PetApi#findPetsByTags */ - default ResponseEntity> findPetsByTags(List tags) { + default ResponseEntity> findPetsByTags(Set tags) { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApi.java index 7578f807f7f..7a9b6e56cc4 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; @@ -106,19 +107,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags); + ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags); /** diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiController.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiController.java index 9b875d7eae2..1241e84f8ec 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiController.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiController.java @@ -3,6 +3,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -80,7 +81,7 @@ public class PetApiController implements PetApi { * @deprecated * @see PetApi#findPetsByTags */ - public ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + public ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { return delegate.findPetsByTags(tags); } diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiDelegate.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiDelegate.java index da180785c56..6a9c39f47b0 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiDelegate.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/api/PetApiDelegate.java @@ -3,6 +3,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.web.multipart.MultipartFile; @@ -60,7 +61,7 @@ public interface PetApiDelegate { * @deprecated * @see PetApi#findPetsByTags */ - ResponseEntity> findPetsByTags(List tags); + ResponseEntity> findPetsByTags(Set tags); /** * GET /pet/{petId} : Find pet by ID diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Pet.java index e91bc5697c7..3e66cbdb75d 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList(); + private Set photoUrls = new LinkedHashSet(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/api/PetApi.java index 75739effaf5..dc4bb5bf767 100644 --- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -143,21 +144,21 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @ApiImplicitParams({ }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApi.java index af728b1a098..d882151d505 100644 --- a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; @@ -119,19 +120,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default Mono>> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags, ServerWebExchange exchange) { + default Mono>> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags, ServerWebExchange exchange) { return getDelegate().findPetsByTags(tags, exchange); } diff --git a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApiDelegate.java b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApiDelegate.java index 69511f24674..538ca335758 100644 --- a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApiDelegate.java +++ b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/api/PetApiDelegate.java @@ -3,6 +3,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -101,7 +102,7 @@ public interface PetApiDelegate { * @deprecated * @see PetApi#findPetsByTags */ - default Mono>> findPetsByTags(List tags, + default Mono>> findPetsByTags(Set tags, ServerWebExchange exchange) { Mono result = Mono.empty(); exchange.getResponse().setStatusCode(HttpStatus.NOT_IMPLEMENTED); diff --git a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml b/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml index f6f5c60294f..da95378bbc8 100644 --- a/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml +++ b/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml @@ -150,6 +150,7 @@ paths: items: type: string type: array + uniqueItems: true style: form responses: "200": @@ -159,11 +160,13 @@ paths: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true application/json: schema: items: $ref: '#/components/schemas/Pet' type: array + uniqueItems: true description: successful operation "400": content: {} @@ -1458,6 +1461,7 @@ components: items: type: string type: array + uniqueItems: true xml: name: photoUrl wrapped: true diff --git a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/api/PetApi.java index 3094b659a98..3310a276528 100644 --- a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -137,19 +138,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { diff --git a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/api/PetApi.java b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/api/PetApi.java index 4906d9049bf..befb74b3a20 100644 --- a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/api/PetApi.java +++ b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.virtualan.api; import org.openapitools.virtualan.model.ModelApiResponse; import org.openapitools.virtualan.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import io.virtualan.annotation.ApiVirtual; import io.virtualan.annotation.VirtualService; @@ -144,19 +145,19 @@ public interface PetApi { * @deprecated */ @ApiVirtual - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { diff --git a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Pet.java b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Pet.java index 052fdc5308b..196538b59e8 100644 --- a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Pet.java +++ b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.virtualan.model.Category; import org.openapitools.virtualan.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; } diff --git a/samples/server/petstore/springboot/src/main/java/org/openapitools/api/PetApi.java b/samples/server/petstore/springboot/src/main/java/org/openapitools/api/PetApi.java index 7ada48d2e87..4349917e116 100644 --- a/samples/server/petstore/springboot/src/main/java/org/openapitools/api/PetApi.java +++ b/samples/server/petstore/springboot/src/main/java/org/openapitools/api/PetApi.java @@ -8,6 +8,7 @@ package org.openapitools.api; import org.openapitools.model.ModelApiResponse; import org.openapitools.model.Pet; import org.springframework.core.io.Resource; +import java.util.Set; import io.swagger.annotations.*; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; @@ -137,19 +138,19 @@ public interface PetApi { * or Invalid tag value (status code 400) * @deprecated */ - @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "List", authorizations = { + @ApiOperation(value = "Finds Pets by tags", nickname = "findPetsByTags", notes = "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", response = Pet.class, responseContainer = "Set", authorizations = { @Authorization(value = "petstore_auth", scopes = { @AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), @AuthorizationScope(scope = "read:pets", description = "read your pets") }) }, tags={ "pet", }) @ApiResponses(value = { - @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "List"), + @ApiResponse(code = 200, message = "successful operation", response = Pet.class, responseContainer = "Set"), @ApiResponse(code = 400, message = "Invalid tag value") }) @RequestMapping(value = "/pet/findByTags", produces = { "application/xml", "application/json" }, method = RequestMethod.GET) - default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) List tags) { + default ResponseEntity> findPetsByTags(@NotNull @ApiParam(value = "Tags to filter by", required = true) @Valid @RequestParam(value = "tags", required = true) Set tags) { getRequest().ifPresent(request -> { for (MediaType mediaType: MediaType.parseMediaTypes(request.getHeader("Accept"))) { if (mediaType.isCompatibleWith(MediaType.valueOf("application/json"))) { diff --git a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/Pet.java b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/Pet.java index c30fc1653d4..6b815c78926 100644 --- a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/Pet.java +++ b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/Pet.java @@ -7,7 +7,9 @@ import com.fasterxml.jackson.annotation.JsonValue; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import org.openapitools.model.Category; import org.openapitools.model.Tag; import org.openapitools.jackson.nullable.JsonNullable; @@ -30,7 +32,7 @@ public class Pet { @JsonProperty("photoUrls") @Valid - private List photoUrls = new ArrayList<>(); + private Set photoUrls = new LinkedHashSet<>(); @JsonProperty("tags") @Valid @@ -138,7 +140,7 @@ public class Pet { this.name = name; } - public Pet photoUrls(List photoUrls) { + public Pet photoUrls(Set photoUrls) { this.photoUrls = photoUrls; return this; } @@ -156,11 +158,11 @@ public class Pet { @NotNull - public List getPhotoUrls() { + public Set getPhotoUrls() { return photoUrls; } - public void setPhotoUrls(List photoUrls) { + public void setPhotoUrls(Set photoUrls) { this.photoUrls = photoUrls; }