Skip to content

Commit 652d17d

Browse files
authored
Remove duplicated imports (OpenAPITools#1414)
* remove duplicated imports * fix model import in java * update generator docs * fix model import for retrofit2 client
1 parent 5c0a914 commit 652d17d

File tree

7 files changed

+9
-9
lines changed

7 files changed

+9
-9
lines changed

modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1032,13 +1032,16 @@ private Map<String, Object> processOperations(CodegenConfig config, String tag,
10321032
}
10331033

10341034
List<Map<String, String>> imports = new ArrayList<Map<String, String>>();
1035+
Set<String> mappingSet = new TreeSet<>();
10351036
for (String nextImport : allImports) {
10361037
Map<String, String> im = new LinkedHashMap<String, String>();
10371038
String mapping = config.importMapping().get(nextImport);
10381039
if (mapping == null) {
10391040
mapping = config.toModelImport(nextImport);
10401041
}
1041-
if (mapping != null) {
1042+
1043+
if (mapping != null && !mappingSet.contains(mapping)) { // ensure import (mapping) is unique
1044+
mappingSet.add(mapping);
10421045
im.put("import", mapping);
10431046
im.put("classname", nextImport);
10441047
if (!imports.contains(im)) { // avoid duplicates

modules/openapi-generator/src/main/resources/Java/JSON.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ import org.threeten.bp.OffsetDateTime;
2525
import org.threeten.bp.format.DateTimeFormatter;
2626
{{/threetenbp}}
2727

28-
{{#parent.length}}
28+
{{#models.0}}
2929
import {{modelPackage}}.*;
30-
{{/parent.length}}
30+
{{/models.0}}
3131
import okio.ByteString;
3232

3333
import java.io.IOException;

modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/JSON.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ import org.threeten.bp.OffsetDateTime;
2525
import org.threeten.bp.format.DateTimeFormatter;
2626
{{/threetenbp}}
2727

28-
{{#parent.length}}
28+
{{#models.0}}
2929
import {{modelPackage}}.*;
30-
{{/parent.length}}
30+
{{/models.0}}
3131

3232
import java.io.IOException;
3333
import java.io.StringReader;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.3.2-SNAPSHOT
1+
3.3.3-SNAPSHOT

samples/client/petstore/lua/petstore/api/pet_api.lua

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ local basexx = require "basexx"
1818
-- model import
1919
local petstore_api_response = require "petstore.model.api_response"
2020
local petstore_pet = require "petstore.model.pet"
21-
local petstore_pet = require "petstore.model.pet"
2221

2322
local pet_api = {}
2423
local pet_api_mt = {

samples/client/petstore/lua/petstore/api/store_api.lua

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ local basexx = require "basexx"
1717

1818
-- model import
1919
local petstore_order = require "petstore.model.order"
20-
local petstore_order = require "petstore.model.order"
2120

2221
local store_api = {}
2322
local store_api_mt = {

samples/client/petstore/lua/petstore/api/user_api.lua

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ local basexx = require "basexx"
1717

1818
-- model import
1919
local petstore_user = require "petstore.model.user"
20-
local petstore_user = require "petstore.model.user"
2120

2221
local user_api = {}
2322
local user_api_mt = {

0 commit comments

Comments
 (0)