Skip to content

Commit b6abace

Browse files
wing328Rattenkrieg
andauthored
[JAVA] java.net.http.HttpClient (java native) conditionally depend on apache (#14670)
* JAVA-NATIVE conditionally depend on apache * add hasFormParamsInSpec in abstract java codegen * use hasFormParamsInSpec instead * minor fix --------- Co-authored-by: Sergey Prytkov <[email protected]>
1 parent 9a0aee9 commit b6abace

File tree

26 files changed

+33
-25
lines changed

26 files changed

+33
-25
lines changed

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1542,6 +1542,10 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List<Mo
15421542
OperationMap operations = objs.getOperations();
15431543
List<CodegenOperation> operationList = operations.getOperation();
15441544
for (CodegenOperation op : operationList) {
1545+
// check if the operation has form parameters
1546+
if (op.getHasFormParams()) {
1547+
additionalProperties.put("hasFormParamsInSpec", true);
1548+
}
15451549
Collection<String> operationImports = new ConcurrentSkipListSet<>();
15461550
for (CodegenParameter p : op.allParams) {
15471551
if (importMapping.containsKey(p.dataType)) {
@@ -1552,6 +1556,7 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List<Mo
15521556

15531557
handleImplicitHeaders(op);
15541558
}
1559+
15551560
return objs;
15561561
}
15571562

modules/openapi-generator/src/main/resources/Java/libraries/native/api.mustache

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,15 @@ import {{import}};
1212

1313
import com.fasterxml.jackson.core.type.TypeReference;
1414
import com.fasterxml.jackson.databind.ObjectMapper;
15+
16+
{{#hasFormParamsInSpec}}
1517
import org.apache.http.HttpEntity;
1618
import org.apache.http.NameValuePair;
1719
import org.apache.http.entity.mime.MultipartEntityBuilder;
1820
import org.apache.http.message.BasicNameValuePair;
1921
import org.apache.http.client.entity.UrlEncodedFormEntity;
2022

23+
{{/hasFormParamsInSpec}}
2124
import java.io.InputStream;
2225
import java.io.ByteArrayInputStream;
2326
import java.io.ByteArrayOutputStream;

modules/openapi-generator/src/main/resources/Java/libraries/native/build.gradle.mustache

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,9 @@ ext {
7272
jackson_version = "2.14.1"
7373
jakarta_annotation_version = "1.3.5"
7474
junit_version = "4.13.2"
75+
{{#hasFormParamsInSpec}}
7576
httpmime_version = "4.5.13"
77+
{{/hasFormParamsInSpec}}
7678
}
7779

7880
dependencies {
@@ -86,7 +88,9 @@ dependencies {
8688
implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"
8789
implementation "org.openapitools:jackson-databind-nullable:0.2.1"
8890
implementation "jakarta.annotation:jakarta.annotation-api:$jakarta_annotation_version"
91+
{{#hasFormParamsInSpec}}
8992
implementation "org.apache.httpcomponents:httpmime:$httpmime_version"
93+
{{/hasFormParamsInSpec}}
9094
testImplementation "junit:junit:$junit_version"
9195
}
9296

modules/openapi-generator/src/main/resources/Java/libraries/native/pom.mustache

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,11 +248,13 @@
248248
<version>${jakarta-annotation-version}</version>
249249
<scope>provided</scope>
250250
</dependency>
251+
{{#hasFormParamsInSpec}}
251252
<dependency>
252253
<groupId>org.apache.httpcomponents</groupId>
253254
<artifactId>httpmime</artifactId>
254255
<version>${httpmime-version}</version>
255256
</dependency>
257+
{{/hasFormParamsInSpec}}
256258
257259
<!-- test dependencies -->
258260
<dependency>
@@ -278,7 +280,9 @@
278280
{{^useJakartaEe}}
279281
<jakarta-annotation-version>1.3.5</jakarta-annotation-version>
280282
{{/useJakartaEe}}
283+
{{#hasFormParamsInSpec}}
281284
<httpmime-version>4.5.13</httpmime-version>
285+
{{/hasFormParamsInSpec}}
282286
<junit-version>4.13.2</junit-version>
283287
<spotless.version>2.27.2</spotless.version>
284288
</properties>

samples/client/echo_api/java/native/src/main/java/org/openapitools/client/api/BodyApi.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,6 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24-
import org.apache.http.HttpEntity;
25-
import org.apache.http.NameValuePair;
26-
import org.apache.http.entity.mime.MultipartEntityBuilder;
27-
import org.apache.http.message.BasicNameValuePair;
28-
import org.apache.http.client.entity.UrlEncodedFormEntity;
2924

3025
import java.io.InputStream;
3126
import java.io.ByteArrayInputStream;

samples/client/echo_api/java/native/src/main/java/org/openapitools/client/api/FormApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import com.fasterxml.jackson.core.type.TypeReference;
2222
import com.fasterxml.jackson.databind.ObjectMapper;
23+
2324
import org.apache.http.HttpEntity;
2425
import org.apache.http.NameValuePair;
2526
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/echo_api/java/native/src/main/java/org/openapitools/client/api/HeaderApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import com.fasterxml.jackson.core.type.TypeReference;
2222
import com.fasterxml.jackson.databind.ObjectMapper;
23+
2324
import org.apache.http.HttpEntity;
2425
import org.apache.http.NameValuePair;
2526
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/echo_api/java/native/src/main/java/org/openapitools/client/api/PathApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import com.fasterxml.jackson.core.type.TypeReference;
2222
import com.fasterxml.jackson.databind.ObjectMapper;
23+
2324
import org.apache.http.HttpEntity;
2425
import org.apache.http.NameValuePair;
2526
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/echo_api/java/native/src/main/java/org/openapitools/client/api/QueryApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424

2525
import com.fasterxml.jackson.core.type.TypeReference;
2626
import com.fasterxml.jackson.databind.ObjectMapper;
27+
2728
import org.apache.http.HttpEntity;
2829
import org.apache.http.NameValuePair;
2930
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/AnotherFakeApi.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,6 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24-
import org.apache.http.HttpEntity;
25-
import org.apache.http.NameValuePair;
26-
import org.apache.http.entity.mime.MultipartEntityBuilder;
27-
import org.apache.http.message.BasicNameValuePair;
28-
import org.apache.http.client.entity.UrlEncodedFormEntity;
2924

3025
import java.io.InputStream;
3126
import java.io.ByteArrayInputStream;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/DefaultApi.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,6 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24-
import org.apache.http.HttpEntity;
25-
import org.apache.http.NameValuePair;
26-
import org.apache.http.entity.mime.MultipartEntityBuilder;
27-
import org.apache.http.message.BasicNameValuePair;
28-
import org.apache.http.client.entity.UrlEncodedFormEntity;
2924

3025
import java.io.InputStream;
3126
import java.io.ByteArrayInputStream;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/FakeApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030

3131
import com.fasterxml.jackson.core.type.TypeReference;
3232
import com.fasterxml.jackson.databind.ObjectMapper;
33+
3334
import org.apache.http.HttpEntity;
3435
import org.apache.http.NameValuePair;
3536
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/FakeClassnameTags123Api.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24+
2425
import org.apache.http.HttpEntity;
2526
import org.apache.http.NameValuePair;
2627
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/PetApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424
import com.fasterxml.jackson.core.type.TypeReference;
2525
import com.fasterxml.jackson.databind.ObjectMapper;
26+
2627
import org.apache.http.HttpEntity;
2728
import org.apache.http.NameValuePair;
2829
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/StoreApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24+
2425
import org.apache.http.HttpEntity;
2526
import org.apache.http.NameValuePair;
2627
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-async/src/main/java/org/openapitools/client/api/UserApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import com.fasterxml.jackson.core.type.TypeReference;
2424
import com.fasterxml.jackson.databind.ObjectMapper;
25+
2526
import org.apache.http.HttpEntity;
2627
import org.apache.http.NameValuePair;
2728
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-jakarta/src/main/java/org/openapitools/client/api/PetApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424
import com.fasterxml.jackson.core.type.TypeReference;
2525
import com.fasterxml.jackson.databind.ObjectMapper;
26+
2627
import org.apache.http.HttpEntity;
2728
import org.apache.http.NameValuePair;
2829
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-jakarta/src/main/java/org/openapitools/client/api/StoreApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24+
2425
import org.apache.http.HttpEntity;
2526
import org.apache.http.NameValuePair;
2627
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native-jakarta/src/main/java/org/openapitools/client/api/UserApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import com.fasterxml.jackson.core.type.TypeReference;
2424
import com.fasterxml.jackson.databind.ObjectMapper;
25+
2526
import org.apache.http.HttpEntity;
2627
import org.apache.http.NameValuePair;
2728
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/AnotherFakeApi.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,6 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24-
import org.apache.http.HttpEntity;
25-
import org.apache.http.NameValuePair;
26-
import org.apache.http.entity.mime.MultipartEntityBuilder;
27-
import org.apache.http.message.BasicNameValuePair;
28-
import org.apache.http.client.entity.UrlEncodedFormEntity;
2924

3025
import java.io.InputStream;
3126
import java.io.ByteArrayInputStream;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/DefaultApi.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,6 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24-
import org.apache.http.HttpEntity;
25-
import org.apache.http.NameValuePair;
26-
import org.apache.http.entity.mime.MultipartEntityBuilder;
27-
import org.apache.http.message.BasicNameValuePair;
28-
import org.apache.http.client.entity.UrlEncodedFormEntity;
2924

3025
import java.io.InputStream;
3126
import java.io.ByteArrayInputStream;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/FakeApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030

3131
import com.fasterxml.jackson.core.type.TypeReference;
3232
import com.fasterxml.jackson.databind.ObjectMapper;
33+
3334
import org.apache.http.HttpEntity;
3435
import org.apache.http.NameValuePair;
3536
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/FakeClassnameTags123Api.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24+
2425
import org.apache.http.HttpEntity;
2526
import org.apache.http.NameValuePair;
2627
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/PetApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424
import com.fasterxml.jackson.core.type.TypeReference;
2525
import com.fasterxml.jackson.databind.ObjectMapper;
26+
2627
import org.apache.http.HttpEntity;
2728
import org.apache.http.NameValuePair;
2829
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/StoreApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import com.fasterxml.jackson.core.type.TypeReference;
2323
import com.fasterxml.jackson.databind.ObjectMapper;
24+
2425
import org.apache.http.HttpEntity;
2526
import org.apache.http.NameValuePair;
2627
import org.apache.http.entity.mime.MultipartEntityBuilder;

samples/client/petstore/java/native/src/main/java/org/openapitools/client/api/UserApi.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import com.fasterxml.jackson.core.type.TypeReference;
2424
import com.fasterxml.jackson.databind.ObjectMapper;
25+
2526
import org.apache.http.HttpEntity;
2627
import org.apache.http.NameValuePair;
2728
import org.apache.http.entity.mime.MultipartEntityBuilder;

0 commit comments

Comments
 (0)