Skip to content

Commit f8700ce

Browse files
committed
Upgrade to openapi-generator version 5 (doesn't work because of swagger-api/swagger-parser#1565)
1 parent c8e9d9f commit f8700ce

File tree

18 files changed

+105
-29
lines changed

18 files changed

+105
-29
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@
180180
</dependencies>
181181
<properties>
182182
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
183-
<openapi-generator-version>4.3.1</openapi-generator-version>
183+
<openapi-generator-version>5.1.1</openapi-generator-version>
184184
<maven-plugin-version>1.0.0</maven-plugin-version>
185185
<junit-version>4.8.1</junit-version>
186186
</properties>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
.openapi-generator-ignore
2+
README.md
3+
docs/CaseWorkerDto.md
4+
docs/CaseWorkersApi.md
5+
docs/CasesApi.md
6+
docs/ExposureDto.md
7+
docs/ExposuresApi.md
8+
docs/InfectionDto.md
9+
docs/InfectionInformationDto.md
10+
src/main/java/io/github/jhannes/openapi/infectionTracker/api/CaseWorkersApi.java
11+
src/main/java/io/github/jhannes/openapi/infectionTracker/api/CasesApi.java
12+
src/main/java/io/github/jhannes/openapi/infectionTracker/api/ExposuresApi.java
13+
src/main/java/io/github/jhannes/openapi/infectionTracker/model/CaseWorkerDto.java
14+
src/main/java/io/github/jhannes/openapi/infectionTracker/model/ExposureDto.java
15+
src/main/java/io/github/jhannes/openapi/infectionTracker/model/InfectionDto.java
16+
src/main/java/io/github/jhannes/openapi/infectionTracker/model/InfectionInformationDto.java
17+
src/test/java/io/github/jhannes/openapi/infectionTracker/api/CaseWorkersApiTest.java
18+
src/test/java/io/github/jhannes/openapi/infectionTracker/api/CasesApiTest.java
19+
src/test/java/io/github/jhannes/openapi/infectionTracker/api/ExposuresApiTest.java
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.3.1
1+
5.1.1
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
.openapi-generator-ignore
2+
README.md
3+
docs/AnyPetDto.md
4+
docs/CatAllOfDto.md
5+
docs/CatDto.md
6+
docs/DefaultApi.md
7+
docs/DogAllOfDto.md
8+
docs/DogDto.md
9+
docs/PetDto.md
10+
src/main/java/io/github/jhannes/openapi/petstore/api/DefaultApi.java
11+
src/main/java/io/github/jhannes/openapi/petstore/model/AnyPetDto.java
12+
src/main/java/io/github/jhannes/openapi/petstore/model/CatAllOfDto.java
13+
src/main/java/io/github/jhannes/openapi/petstore/model/CatDto.java
14+
src/main/java/io/github/jhannes/openapi/petstore/model/DogAllOfDto.java
15+
src/main/java/io/github/jhannes/openapi/petstore/model/DogDto.java
16+
src/main/java/io/github/jhannes/openapi/petstore/model/PetDto.java
17+
src/test/java/io/github/jhannes/openapi/petstore/api/DefaultApiTest.java
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.3.1
1+
5.1.1
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
.openapi-generator-ignore
2+
README.md
3+
docs/AnyPartyDto.md
4+
docs/CreationErrorDto.md
5+
docs/DefaultApi.md
6+
docs/DuplicateIdentifierErrorDto.md
7+
docs/GeneralErrorDto.md
8+
docs/IllegalEmailAddressErrorDto.md
9+
docs/NotFoundErrorDto.md
10+
docs/OrganizationDto.md
11+
docs/PersonDto.md
12+
docs/UpdateErrorDto.md
13+
src/main/java/io/github/jhannes/openapi/poly/api/DefaultApi.java
14+
src/main/java/io/github/jhannes/openapi/poly/model/AnyPartyDto.java
15+
src/main/java/io/github/jhannes/openapi/poly/model/CreationErrorDto.java
16+
src/main/java/io/github/jhannes/openapi/poly/model/DuplicateIdentifierErrorDto.java
17+
src/main/java/io/github/jhannes/openapi/poly/model/GeneralErrorDto.java
18+
src/main/java/io/github/jhannes/openapi/poly/model/IllegalEmailAddressErrorDto.java
19+
src/main/java/io/github/jhannes/openapi/poly/model/NotFoundErrorDto.java
20+
src/main/java/io/github/jhannes/openapi/poly/model/OrganizationDto.java
21+
src/main/java/io/github/jhannes/openapi/poly/model/PersonDto.java
22+
src/main/java/io/github/jhannes/openapi/poly/model/UpdateErrorDto.java
23+
src/test/java/io/github/jhannes/openapi/poly/api/DefaultApiTest.java
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.3.1
1+
5.1.1

snapshotTests/snapshot/poly/src/main/java/io/github/jhannes/openapi/poly/model/AnyPartyDto.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,19 @@
3434
public interface AnyPartyDto {
3535
String getType();
3636

37-
static PersonDto person() {
38-
return new PersonDto().type("person");
39-
}
4037
static OrganizationDto organization() {
4138
return new OrganizationDto().type("organization");
4239
}
40+
static PersonDto person() {
41+
return new PersonDto().type("person");
42+
}
4343

4444
static Class<?> getType(String type) {
4545
switch (type) {
46-
case "person":
47-
return PersonDto.class;
4846
case "organization":
4947
return OrganizationDto.class;
48+
case "person":
49+
return PersonDto.class;
5050
default:
5151
throw new IllegalArgumentException("Illegal type " + type);
5252
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
.openapi-generator-ignore
2+
README.md
3+
docs/AnyPetDto.md
4+
docs/CatAllOfDto.md
5+
docs/CatDto.md
6+
docs/DefaultApi.md
7+
docs/DogAllOfDto.md
8+
docs/DogDto.md
9+
docs/PetDto.md
10+
src/main/java/io/github/jhannes/openapi/typeHierarchy/api/DefaultApi.java
11+
src/main/java/io/github/jhannes/openapi/typeHierarchy/model/AnyPetDto.java
12+
src/main/java/io/github/jhannes/openapi/typeHierarchy/model/CatAllOfDto.java
13+
src/main/java/io/github/jhannes/openapi/typeHierarchy/model/CatDto.java
14+
src/main/java/io/github/jhannes/openapi/typeHierarchy/model/DogAllOfDto.java
15+
src/main/java/io/github/jhannes/openapi/typeHierarchy/model/DogDto.java
16+
src/main/java/io/github/jhannes/openapi/typeHierarchy/model/PetDto.java
17+
src/test/java/io/github/jhannes/openapi/typeHierarchy/api/DefaultApiTest.java
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.3.1
1+
5.1.1

src/main/java/io/github/jhannes/openapi/javaannotationfree/JavaCodegen.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public JavaCodegen() {
2323
@Override
2424
public void processOpts() {
2525
super.processOpts();
26-
writeOptional(outputFolder, new SupportingFile("README.mustache", "", "README.md"));
26+
supportingFiles.add(new SupportingFile("README.mustache", "", "README.md").doNotOverwrite());
2727
}
2828

2929
@Override

src/main/resources/JavaAnnotationfree/README.mustache

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ public class Example {
134134
{{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}}
135135
{{/allParams}}
136136
try {
137-
{{#returnType}}{{{returnType}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{#hasMore}}, {{/hasMore}}{{/allParams}});{{#returnType}}
137+
{{#returnType}}{{{returnType}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}}
138138
System.out.println(result);{{/returnType}}
139139
} catch (HttpClientException e) {
140140
System.err.println("Exception when calling {{{classname}}}#{{{operationId}}}");
@@ -195,5 +195,5 @@ It's recommended to create an instance of `ApiClient` per thread in a multithrea
195195

196196
## Author
197197

198-
{{#apiInfo}}{{#apis}}{{^hasMore}}{{infoEmail}}
199-
{{/hasMore}}{{/apis}}{{/apiInfo}}
198+
{{#apiInfo}}{{#apis}}{{#-last}}{{infoEmail}}
199+
{{/-last}}{{/apis}}{{/apiInfo}}

src/main/resources/JavaAnnotationfree/api.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public interface {{classname}} {
4848
@RequestParam("{{baseName}}") {{^required}}Optional<{{{dataType}}}>{{/required}}{{#required}}{{{dataType}}}{{/required}} {{paramName}}{{/isQueryParam}}{{#isBodyParam}}
4949
@JsonBody {{{dataType}}} {{paramName}}{{/isBodyParam}}{{#isFormParam}}
5050
@RequestParam("{{baseName}}") {{^required}}Optional<{{{dataType}}}>{{/required}}{{#required}}{{{dataType}}}{{/required}} {{paramName}}{{/isFormParam}}{{#isHeaderParam}}
51-
@HttpHeader("{{baseName}}") {{^required}}Optional<{{{dataType}}}>{{/required}}{{#required}}{{{dataType}}}{{/required}} {{paramName}}{{/isHeaderParam}}{{#hasMore}}, {{/hasMore}}{{/allParams}}{{#responses}}{{#headers}},
51+
@HttpHeader("{{baseName}}") {{^required}}Optional<{{{dataType}}}>{{/required}}{{#required}}{{{dataType}}}{{/required}} {{paramName}}{{/isHeaderParam}}{{^-last}}, {{/-last}}{{/allParams}}{{#responses}}{{#headers}},
5252
@HttpHeader("{{baseName}}") Consumer<{{{dataType}}}> set{{nameInCamelCase}}{{/headers}}{{/responses}}
5353
) throws IOException;
5454
{{/operation}}

src/main/resources/JavaAnnotationfree/api_doc.mustache

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Method | HTTP request | Description
1414

1515
## {{operationId}}
1616

17-
> {{#returnType}}{{returnType}} {{/returnType}}{{operationId}}({{#allParams}}{{{paramName}}}{{#hasMore}}, {{/hasMore}}{{/allParams}})
17+
> {{#returnType}}{{returnType}} {{/returnType}}{{operationId}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}})
1818

1919
{{summary}}{{#notes}}
2020

@@ -78,7 +78,7 @@ public class Example {
7878
{{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}}
7979
{{/allParams}}
8080
try {
81-
{{#returnType}}{{{returnType}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{#hasMore}}, {{/hasMore}}{{/allParams}});{{#returnType}}
81+
{{#returnType}}{{{returnType}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}}
8282
System.out.println(result);{{/returnType}}
8383
} catch (HttpClientException e) {
8484
System.err.println("Exception when calling {{{classname}}}#{{{operationId}}}");
@@ -108,8 +108,8 @@ Name | Type | Description | Notes
108108

109109
### HTTP request headers
110110

111-
- **Content-Type**: {{#consumes}}{{{mediaType}}}{{#hasMore}}, {{/hasMore}}{{/consumes}}{{^consumes}}Not defined{{/consumes}}
112-
- **Accept**: {{#produces}}{{{mediaType}}}{{#hasMore}}, {{/hasMore}}{{/produces}}{{^produces}}Not defined{{/produces}}
111+
- **Content-Type**: {{#consumes}}{{{mediaType}}}{{^-last}}, {{/-last}}{{/consumes}}{{^consumes}}Not defined{{/consumes}}
112+
- **Accept**: {{#produces}}{{{mediaType}}}{{^-last}}, {{/-last}}{{/produces}}{{^produces}}Not defined{{/produces}}
113113

114114
{{#responses.0}}
115115
### HTTP response details

src/main/resources/JavaAnnotationfree/api_test.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public class {{classname}}Test {
4242
//{{#allParams}}
4343
//{{{dataType}}} {{paramName}} = null;
4444
//{{/allParams}}
45-
//{{#returnType}}{{{returnType}}} response = {{/returnType}}api.{{operationId}}({{#allParams}}{{paramName}}{{#hasMore}}, {{/hasMore}}{{/allParams}});
45+
//{{#returnType}}{{{returnType}}} response = {{/returnType}}api.{{operationId}}({{#allParams}}{{paramName}}{{^-last}}, {{/-last}}{{/allParams}});
4646

4747
// TODO: test validations
4848
}

src/main/resources/JavaAnnotationfree/jackson_annotations.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
* Else use custom behaviour, IOW use whatever is defined on the object mapper
66
}}
77
@JsonProperty(JSON_PROPERTY_{{nameInSnakeCase}})
8-
@JsonInclude({{#isMapContainer}}{{#items.isNullable}}content = JsonInclude.Include.ALWAYS, {{/items.isNullable}}{{/isMapContainer}}value = JsonInclude.Include.{{#required}}ALWAYS{{/required}}{{^required}}USE_DEFAULTS{{/required}})
8+
@JsonInclude({{#isMap}}{{#items.isNullable}}content = JsonInclude.Include.ALWAYS, {{/items.isNullable}}{{/isMap}}value = JsonInclude.Include.{{#required}}ALWAYS{{/required}}{{^required}}USE_DEFAULTS{{/required}})
99
{{#withXml}}
1010
{{^isContainer}}
1111
@JacksonXmlProperty({{#isXmlAttribute}}isAttribute = true, {{/isXmlAttribute}}{{#xmlNamespace}}namespace="{{xmlNamespace}}", {{/xmlNamespace}}localName = "{{#xmlName}}{{xmlName}}{{/xmlName}}{{^xmlName}}{{baseName}}{{/xmlName}}")

src/main/resources/JavaAnnotationfree/pojo.mustache

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ public class {{classname}} {{#parent}}extends {{parent}} {{/parent}}{
6969

7070
{{#vars}}
7171
{{^isInherited}}
72-
{{#isListContainer}}
72+
{{#isArray}}
7373

7474
public <T> {{classname}} {{name}}(Collection<T> items, Function<T, {{items.datatypeWithEnum}}> mapper) {
7575
return {{baseName}}(items.stream().map(mapper).collect(Collectors.toList()));
@@ -88,8 +88,8 @@ public class {{classname}} {{#parent}}extends {{parent}} {{/parent}}{
8888
this.{{baseName}}.add({{name}}Item);
8989
return this;
9090
}
91-
{{/isListContainer}}
92-
{{#isMapContainer}}
91+
{{/isArray}}
92+
{{#isMap}}
9393

9494
public {{classname}} put{{nameInCamelCase}}Item(String key, {{{items.datatypeWithEnum}}} {{name}}Item) {
9595
{{^required}}
@@ -100,7 +100,7 @@ public class {{classname}} {{#parent}}extends {{parent}} {{/parent}}{
100100
this.{{baseName}}.put(key, {{name}}Item);
101101
return this;
102102
}
103-
{{/isMapContainer}}
103+
{{/isMap}}
104104

105105
/**
106106
{{#description}}
@@ -153,15 +153,15 @@ public class {{classname}} {{#parent}}extends {{parent}} {{/parent}}{
153153
return false;
154154
}{{#hasVars}}
155155
{{classname}} {{classVarName}} = ({{classname}}) o;
156-
return {{#vars}}{{#isByteArray}}Arrays{{/isByteArray}}{{^isByteArray}}Objects{{/isByteArray}}.equals(this.{{getter}}(), {{classVarName}}.{{getter}}()){{#hasMore}} &&
157-
{{/hasMore}}{{/vars}}{{#parent}} &&
156+
return {{#vars}}{{#isByteArray}}Arrays{{/isByteArray}}{{^isByteArray}}Objects{{/isByteArray}}.equals(this.{{getter}}(), {{classVarName}}.{{getter}}()){{^-last}} &&
157+
{{/-last}}{{/vars}}{{#parent}} &&
158158
super.equals(o){{/parent}};{{/hasVars}}{{^hasVars}}
159159
return {{#parent}}super.equals(o){{/parent}}{{^parent}}true{{/parent}};{{/hasVars}}
160160
}
161161

162162
@Override
163163
public int hashCode() {
164-
return Objects.hash({{#vars}}{{^isByteArray}}{{getter}}(){{/isByteArray}}{{#isByteArray}}Arrays.hashCode({{getter}}()){{/isByteArray}}{{#hasMore}}, {{/hasMore}}{{/vars}});
164+
return Objects.hash({{#vars}}{{^isByteArray}}{{getter}}(){{/isByteArray}}{{#isByteArray}}Arrays.hashCode({{getter}}()){{/isByteArray}}{{^-last}}, {{/-last}}{{/vars}});
165165
}
166166

167167
@Override

src/test/java/io/github/jhannes/openapi/typescriptfetchapi/SnapshotTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ private void diff(Path file, Path snapshot) throws IOException {
8383
private void generate(Path file, String generatorName, Path output, String modelName) {
8484
final CodegenConfigurator configurator = new CodegenConfigurator()
8585
.setGeneratorName(generatorName)
86-
.setInputSpec(file.toString())
86+
.setInputSpec(file.toString().replaceAll("\\\\", "/"))
8787
.setModelNameSuffix("Dto")
8888
.setPackageName("io.github.jhannes.openapi." + modelName)
8989
.setModelPackage("io.github.jhannes.openapi." + modelName + ".model")

0 commit comments

Comments
 (0)