From 78ce2be8432bf7307956341715c482a469b69b26 Mon Sep 17 00:00:00 2001
From: Chrimle <28791817+Chrimle@users.noreply.github.com>
Date: Mon, 23 Feb 2026 23:25:42 +0100
Subject: [PATCH] [Java][WebClient] Propagate OpenAPI Deprecations to Generated
`ApiClient`-methods
Signed-off-by: Chrimle <28791817+Chrimle@users.noreply.github.com>
---
.../main/resources/Java/libraries/webclient/api.mustache | 6 ++++++
.../src/main/java/org/openapitools/client/api/PetApi.java | 2 ++
.../src/main/java/org/openapitools/client/api/PetApi.java | 2 ++
.../src/main/java/org/openapitools/client/api/PetApi.java | 2 ++
.../src/main/java/org/openapitools/client/api/PetApi.java | 2 ++
5 files changed, 14 insertions(+)
diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/api.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/api.mustache
index 7c8e49209a06..1a242151a55e 100644
--- a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/api.mustache
+++ b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/api.mustache
@@ -196,7 +196,13 @@ public class {{classname}} {
* {{description}}
* @see {{summary}} Documentation
{{/externalDocs}}
+{{#isDeprecated}}
+ * @deprecated
+{{/isDeprecated}}
*/
+ {{#isDeprecated}}
+ @Deprecated
+ {{/isDeprecated}}
public {{#vendorExtensions.x-webclient-blocking}}{{#returnType}}{{#vendorExtensions.x-webclient-return-except-list-of-string}}ResponseEntity>{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{^vendorExtensions.x-webclient-return-except-list-of-string}}ResponseEntity<{{#isResponseFile}}{{#useAbstractionForFiles}}org.springframework.core.io.Resource{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{{returnType}}}{{/useAbstractionForFiles}}{{/isResponseFile}}{{^isResponseFile}}{{{returnType}}}{{/isResponseFile}}>{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{/returnType}}{{^returnType}}ResponseEntity{{/returnType}} {{/vendorExtensions.x-webclient-blocking}}{{^vendorExtensions.x-webclient-blocking}}{{#returnType}}{{#vendorExtensions.x-webclient-return-except-list-of-string}}Mono>>{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{^vendorExtensions.x-webclient-return-except-list-of-string}}Mono>{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{/returnType}}{{^returnType}}Mono>{{/returnType}} {{/vendorExtensions.x-webclient-blocking}}{{operationId}}WithHttpInfo({{#allParams}}{{#isFile}}{{#useAbstractionForFiles}}{{#collectionFormat}}java.util.Collection{{/collectionFormat}}{{^collectionFormat}}org.springframework.core.io.AbstractResource{{/collectionFormat}}{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{>nullable_var_annotations}} {{{dataType}}}{{/useAbstractionForFiles}}{{/isFile}}{{^isFile}}{{>nullable_var_annotations}} {{{dataType}}}{{/isFile}} {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) throws WebClientResponseException {
{{#returnType}}ParameterizedTypeReference<{{#vendorExtensions.x-webclient-return-except-list-of-string}}{{#isResponseFile}}{{#useAbstractionForFiles}}org.springframework.core.io.Resource{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{{returnBaseType}}}{{/useAbstractionForFiles}}{{/isResponseFile}}{{^isResponseFile}}{{{returnBaseType}}}{{/isResponseFile}}{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{^vendorExtensions.x-webclient-return-except-list-of-string}}{{#isResponseFile}}{{#useAbstractionForFiles}}org.springframework.core.io.Resource{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{{returnType}}}{{/useAbstractionForFiles}}{{/isResponseFile}}{{^isResponseFile}}{{{returnType}}}{{/isResponseFile}}{{/vendorExtensions.x-webclient-return-except-list-of-string}}> localVarReturnType = new ParameterizedTypeReference<{{#vendorExtensions.x-webclient-return-except-list-of-string}}{{#isResponseFile}}{{#useAbstractionForFiles}}org.springframework.core.io.Resource{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{{returnBaseType}}}{{/useAbstractionForFiles}}{{/isResponseFile}}{{^isResponseFile}}{{{returnBaseType}}}{{/isResponseFile}}{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{^vendorExtensions.x-webclient-return-except-list-of-string}}{{#isResponseFile}}{{#useAbstractionForFiles}}org.springframework.core.io.Resource{{/useAbstractionForFiles}}{{^useAbstractionForFiles}}{{{returnType}}}{{/useAbstractionForFiles}}{{/isResponseFile}}{{^isResponseFile}}{{{returnType}}}{{/isResponseFile}}{{/vendorExtensions.x-webclient-return-except-list-of-string}}>() {};{{/returnType}}{{^returnType}}ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {};{{/returnType}}
return {{operationId}}RequestCreation({{#allParams}}{{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).{{#vendorExtensions.x-webclient-return-except-list-of-string}}toEntityList{{/vendorExtensions.x-webclient-return-except-list-of-string}}{{^vendorExtensions.x-webclient-return-except-list-of-string}}toEntity{{/vendorExtensions.x-webclient-return-except-list-of-string}}(localVarReturnType){{#vendorExtensions.x-webclient-blocking}}.block(){{/vendorExtensions.x-webclient-blocking}};
diff --git a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/api/PetApi.java
index 2009b6ef8dbb..b7b7920d482c 100644
--- a/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/api/PetApi.java
+++ b/samples/client/petstore/java/webclient-jakarta/src/main/java/org/openapitools/client/api/PetApi.java
@@ -344,7 +344,9 @@ public Set findPetsByTags(@jakarta.annotation.Nonnull Set tags) thr
* @param tags Tags to filter by
* @return ResponseEntity<Set<Pet>>
* @throws WebClientResponseException if an error occurs while attempting to invoke the API
+ * @deprecated
*/
+ @Deprecated
public ResponseEntity> findPetsByTagsWithHttpInfo(@jakarta.annotation.Nonnull Set tags) throws WebClientResponseException {
ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {};
return findPetsByTagsRequestCreation(tags).toEntityList(localVarReturnType).block();
diff --git a/samples/client/petstore/java/webclient-swagger2/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/webclient-swagger2/src/main/java/org/openapitools/client/api/PetApi.java
index 3343f3817fc4..5037aad0869a 100644
--- a/samples/client/petstore/java/webclient-swagger2/src/main/java/org/openapitools/client/api/PetApi.java
+++ b/samples/client/petstore/java/webclient-swagger2/src/main/java/org/openapitools/client/api/PetApi.java
@@ -344,7 +344,9 @@ public Set findPetsByTags(@javax.annotation.Nonnull Set tags) throw
* @param tags Tags to filter by
* @return ResponseEntity<Set<Pet>>
* @throws WebClientResponseException if an error occurs while attempting to invoke the API
+ * @deprecated
*/
+ @Deprecated
public ResponseEntity> findPetsByTagsWithHttpInfo(@javax.annotation.Nonnull Set tags) throws WebClientResponseException {
ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {};
return findPetsByTagsRequestCreation(tags).toEntityList(localVarReturnType).block();
diff --git a/samples/client/petstore/java/webclient-useSingleRequestParameter/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/webclient-useSingleRequestParameter/src/main/java/org/openapitools/client/api/PetApi.java
index 4256f82a06c4..db18dc24cdf9 100644
--- a/samples/client/petstore/java/webclient-useSingleRequestParameter/src/main/java/org/openapitools/client/api/PetApi.java
+++ b/samples/client/petstore/java/webclient-useSingleRequestParameter/src/main/java/org/openapitools/client/api/PetApi.java
@@ -428,7 +428,9 @@ public Set findPetsByTags(@javax.annotation.Nonnull Set tags) throw
* @param tags Tags to filter by
* @return ResponseEntity<Set<Pet>>
* @throws WebClientResponseException if an error occurs while attempting to invoke the API
+ * @deprecated
*/
+ @Deprecated
public ResponseEntity> findPetsByTagsWithHttpInfo(@javax.annotation.Nonnull Set tags) throws WebClientResponseException {
ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {};
return findPetsByTagsRequestCreation(tags).toEntityList(localVarReturnType).block();
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 3343f3817fc4..5037aad0869a 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
@@ -344,7 +344,9 @@ public Set findPetsByTags(@javax.annotation.Nonnull Set tags) throw
* @param tags Tags to filter by
* @return ResponseEntity<Set<Pet>>
* @throws WebClientResponseException if an error occurs while attempting to invoke the API
+ * @deprecated
*/
+ @Deprecated
public ResponseEntity> findPetsByTagsWithHttpInfo(@javax.annotation.Nonnull Set tags) throws WebClientResponseException {
ParameterizedTypeReference localVarReturnType = new ParameterizedTypeReference() {};
return findPetsByTagsRequestCreation(tags).toEntityList(localVarReturnType).block();