Improve type reference in toEntity call in order to fix issue with LinkedHashMap being returned instead of maped object to POJO (#16293)

This commit is contained in:
n1t4chi 2023-08-10 17:22:08 +02:00 committed by GitHub
parent fd12bb3508
commit e8160d8d7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 3 deletions

View File

@ -1,5 +1,6 @@
package {{packageName}}.infrastructure;
import org.springframework.core.ParameterizedTypeReference
import org.springframework.http.HttpHeaders
import org.springframework.http.HttpMethod
import org.springframework.http.MediaType
@ -13,7 +14,7 @@ open class ApiClient(protected val client: WebClient) {
protected inline fun <reified I : Any, reified T: Any?> request(requestConfig: RequestConfig<I>): Mono<ResponseEntity<T>> {
return prepare(defaults(requestConfig))
.retrieve()
.toEntity(T::class.java)
.toEntity(object : ParameterizedTypeReference<T>() {})
}
protected fun <I : Any> prepare(requestConfig: RequestConfig<I>) =

View File

@ -1,5 +1,6 @@
package org.openapitools.client.infrastructure;
import org.springframework.core.ParameterizedTypeReference
import org.springframework.http.HttpHeaders
import org.springframework.http.HttpMethod
import org.springframework.http.MediaType
@ -13,7 +14,7 @@ open class ApiClient(protected val client: WebClient) {
protected inline fun <reified I : Any, reified T: Any?> request(requestConfig: RequestConfig<I>): Mono<ResponseEntity<T>> {
return prepare(defaults(requestConfig))
.retrieve()
.toEntity(T::class.java)
.toEntity(object : ParameterizedTypeReference<T>() {})
}
protected fun <I : Any> prepare(requestConfig: RequestConfig<I>) =

View File

@ -1,5 +1,6 @@
package org.openapitools.client.infrastructure;
import org.springframework.core.ParameterizedTypeReference
import org.springframework.http.HttpHeaders
import org.springframework.http.HttpMethod
import org.springframework.http.MediaType
@ -13,7 +14,7 @@ open class ApiClient(protected val client: WebClient) {
protected inline fun <reified I : Any, reified T: Any?> request(requestConfig: RequestConfig<I>): Mono<ResponseEntity<T>> {
return prepare(defaults(requestConfig))
.retrieve()
.toEntity(T::class.java)
.toEntity(object : ParameterizedTypeReference<T>() {})
}
protected fun <I : Any> prepare(requestConfig: RequestConfig<I>) =