diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache index 077e7099f68e..3e8a99abd201 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache @@ -34,6 +34,12 @@ import feign.jackson.JacksonEncoder; import feign.gson.GsonDecoder; import feign.gson.GsonEncoder; {{/gson}} +{{#feign-okhttp}} +import feign.okhttp.OkHttpClient; +{{/feign-okhttp}} +{{#feign-hc5}} +import feign.hc5.ApacheHttp5Client; +{{/feign-hc5}} import feign.slf4j.Slf4jLogger; import {{invokerPackage}}.auth.HttpBasicAuth; import {{invokerPackage}}.auth.HttpBearerAuth; @@ -65,12 +71,24 @@ public class ApiClient { protected String basePath = "{{{basePath}}}"; protected Map apiAuthorizations; protected Feign.Builder feignBuilder; + {{#feign-okhttp}} + private static final OkHttpClient OK_HTTP_CLIENT = new OkHttpClient(); + {{/feign-okhttp}} + {{#feign-hc5}} + private static final ApacheHttp5Client APACHE_HTTP5_CLIENT = new ApacheHttp5Client(); + {{/feign-hc5}} public ApiClient() { apiAuthorizations = new LinkedHashMap(); {{#jackson}} objectMapper = createObjectMapper(); feignBuilder = Feign.builder() + {{#feign-okhttp}} + .client(OK_HTTP_CLIENT) + {{/feign-okhttp}} + {{#feign-hc5}} + .client(APACHE_HTTP5_CLIENT) + {{/feign-hc5}} .encoder(new FormEncoder(new JacksonEncoder(objectMapper))) .decoder(new ApiResponseDecoder(objectMapper)) {{#hasOAuthMethods}} @@ -81,6 +99,12 @@ public class ApiClient { {{/jackson}} {{#gson}} feignBuilder = Feign.builder() + {{#feign-okhttp}} + .client(OK_HTTP_CLIENT) + {{/feign-okhttp}} + {{#feign-hc5}} + .client(APACHE_HTTP5_CLIENT) + {{/feign-hc5}} .encoder(new FormEncoder(new GsonEncoder())) .decoder(new GsonDecoder()) {{#hasOAuthMethods}} diff --git a/samples/client/echo_api/java/feign-gson/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/echo_api/java/feign-gson/src/main/java/org/openapitools/client/ApiClient.java index 48e016dd6804..1f9e890b24f4 100644 --- a/samples/client/echo_api/java/feign-gson/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/echo_api/java/feign-gson/src/main/java/org/openapitools/client/ApiClient.java @@ -25,6 +25,7 @@ import feign.form.FormEncoder; import feign.gson.GsonDecoder; import feign.gson.GsonEncoder; +import feign.okhttp.OkHttpClient; import feign.slf4j.Slf4jLogger; import org.openapitools.client.auth.HttpBasicAuth; import org.openapitools.client.auth.HttpBearerAuth; @@ -40,10 +41,12 @@ public interface Api {} protected String basePath = "http://localhost:3000"; protected Map apiAuthorizations; protected Feign.Builder feignBuilder; + private static final OkHttpClient OK_HTTP_CLIENT = new OkHttpClient(); public ApiClient() { apiAuthorizations = new LinkedHashMap(); feignBuilder = Feign.builder() + .client(OK_HTTP_CLIENT) .encoder(new FormEncoder(new GsonEncoder())) .decoder(new GsonDecoder()) .logger(new Slf4jLogger()); diff --git a/samples/client/petstore/java/feign-hc5/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/feign-hc5/src/main/java/org/openapitools/client/ApiClient.java index 16e81ba9274a..e6842e368393 100644 --- a/samples/client/petstore/java/feign-hc5/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/petstore/java/feign-hc5/src/main/java/org/openapitools/client/ApiClient.java @@ -30,6 +30,7 @@ import feign.form.FormEncoder; import feign.jackson.JacksonDecoder; import feign.jackson.JacksonEncoder; +import feign.hc5.ApacheHttp5Client; import feign.slf4j.Slf4jLogger; import org.openapitools.client.auth.HttpBasicAuth; import org.openapitools.client.auth.HttpBearerAuth; @@ -54,11 +55,13 @@ public interface Api {} protected String basePath = "http://petstore.swagger.io:80/v2"; protected Map apiAuthorizations; protected Feign.Builder feignBuilder; + private static final ApacheHttp5Client APACHE_HTTP5_CLIENT = new ApacheHttp5Client(); public ApiClient() { apiAuthorizations = new LinkedHashMap(); objectMapper = createObjectMapper(); feignBuilder = Feign.builder() + .client(APACHE_HTTP5_CLIENT) .encoder(new FormEncoder(new JacksonEncoder(objectMapper))) .decoder(new ApiResponseDecoder(objectMapper)) .errorDecoder(new ApiErrorDecoder()) diff --git a/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/ApiClient.java index f73501bf6f28..cf0c96761aa2 100644 --- a/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/petstore/java/feign-no-nullable/src/main/java/org/openapitools/client/ApiClient.java @@ -29,6 +29,7 @@ import feign.form.FormEncoder; import feign.jackson.JacksonDecoder; import feign.jackson.JacksonEncoder; +import feign.okhttp.OkHttpClient; import feign.slf4j.Slf4jLogger; import org.openapitools.client.auth.HttpBasicAuth; import org.openapitools.client.auth.HttpBearerAuth; @@ -53,11 +54,13 @@ public interface Api {} protected String basePath = "http://petstore.swagger.io:80/v2"; protected Map apiAuthorizations; protected Feign.Builder feignBuilder; + private static final OkHttpClient OK_HTTP_CLIENT = new OkHttpClient(); public ApiClient() { apiAuthorizations = new LinkedHashMap(); objectMapper = createObjectMapper(); feignBuilder = Feign.builder() + .client(OK_HTTP_CLIENT) .encoder(new FormEncoder(new JacksonEncoder(objectMapper))) .decoder(new ApiResponseDecoder(objectMapper)) .errorDecoder(new ApiErrorDecoder()) diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java index 16e81ba9274a..9b92f16aaeb9 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java @@ -30,6 +30,7 @@ import feign.form.FormEncoder; import feign.jackson.JacksonDecoder; import feign.jackson.JacksonEncoder; +import feign.okhttp.OkHttpClient; import feign.slf4j.Slf4jLogger; import org.openapitools.client.auth.HttpBasicAuth; import org.openapitools.client.auth.HttpBearerAuth; @@ -54,11 +55,13 @@ public interface Api {} protected String basePath = "http://petstore.swagger.io:80/v2"; protected Map apiAuthorizations; protected Feign.Builder feignBuilder; + private static final OkHttpClient OK_HTTP_CLIENT = new OkHttpClient(); public ApiClient() { apiAuthorizations = new LinkedHashMap(); objectMapper = createObjectMapper(); feignBuilder = Feign.builder() + .client(OK_HTTP_CLIENT) .encoder(new FormEncoder(new JacksonEncoder(objectMapper))) .decoder(new ApiResponseDecoder(objectMapper)) .errorDecoder(new ApiErrorDecoder())