## Uses of Class
org.springframework.core.ParameterizedTypeReference

- Packages that use ParameterizedTypeReference
  Package | Description
  --- | ---
  org.springframework.core | Provides basic classes for exception handling and version detection, and other core helpers that are not specific to any part of the framework.
  org.springframework.http.client | Contains an abstraction over client-side HTTP.
  org.springframework.messaging.rsocket | Support for the RSocket protocol.
  org.springframework.mock.web.reactive.function.server | Mock objects for the functional web framework.
  org.springframework.test.web.reactive.server | Support for testing Spring WebFlux server endpoints via `WebTestClient`.
  org.springframework.web.client | Core package of the client-side web support.
  org.springframework.web.reactive.function | Provides a foundation for both the reactive client and server subpackages.
  org.springframework.web.reactive.function.client | Provides a reactive `WebClient` that builds on top of the `org.springframework.http.client.reactive` reactive HTTP adapter layer.
  org.springframework.web.reactive.function.client.support | Classes supporting the `org.springframework.web.reactive.function.client` package.
  org.springframework.web.reactive.function.server | Provides the types that make up Spring's functional web framework for Reactive environments.
  org.springframework.web.reactive.function.server.support | Classes supporting the `org.springframework.web.reactive.function.server` package.
  org.springframework.web.servlet.function | Provides the types that make up Spring's functional web framework for Servlet environments.

- - ### Uses of ParameterizedTypeReference in org.springframework.core

    Methods in org.springframework.core that return ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `static <T> ParameterizedTypeReference<T>` | ParameterizedTypeReference.`forType(Type type)` Build a `ParameterizedTypeReference` wrapping the given type.

    Methods in org.springframework.core with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `static ResolvableType` | ResolvableType.`forType(ParameterizedTypeReference<?> typeReference)` Return a `ResolvableType` for the specified `ParameterizedTypeReference`.

  - ### Uses of ParameterizedTypeReference in org.springframework.http.client

    Methods in org.springframework.http.client with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `<T,P extends Publisher<T>> MultipartBodyBuilder.PartBuilder` | MultipartBodyBuilder.`asyncPart(String name, P publisher, ParameterizedTypeReference<T> typeReference)` Variant of `MultipartBodyBuilder.asyncPart(String, Publisher, Class)` with a `ParameterizedTypeReference` for the element type information.

  - ### Uses of ParameterizedTypeReference in org.springframework.messaging.rsocket

    Methods in org.springframework.messaging.rsocket with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `RSocketRequester.RetrieveSpec` | RSocketRequester.RequestSpec.`data(Object producer, ParameterizedTypeReference<?> elementTypeRef)` Variant of `RSocketRequester.RequestSpec.data(Object, Class)` for when the type hint has to have a generic type.
    `default void` | MetadataExtractorRegistry.`metadataToExtract(MimeType mimeType, ParameterizedTypeReference<?> targetType, String name)` Variant of `MetadataExtractorRegistry.metadataToExtract(MimeType, Class, String)` that accepts `ParameterizedTypeReference` instead of `Class` for specifying a target type with generic parameters.
    `<T> void` | DefaultMetadataExtractor.`metadataToExtract(MimeType mimeType, ParameterizedTypeReference<T> type, BiConsumer<T,Map<String,Object>> mapper)`
    `<T> void` | MetadataExtractorRegistry.`metadataToExtract(MimeType mimeType, ParameterizedTypeReference<T> type, BiConsumer<T,Map<String,Object>> mapper)` Variant of `MetadataExtractorRegistry.metadataToExtract(MimeType, Class, BiConsumer)` that accepts `ParameterizedTypeReference` instead of `Class` for specifying a target type with generic parameters.
    `<T> reactor.core.publisher.Flux<T>` | RSocketRequester.RetrieveSpec.`retrieveFlux(ParameterizedTypeReference<T> dataTypeRef)` Variant of `RSocketRequester.RetrieveSpec.retrieveFlux(Class)` for when the dataType has to have a generic type.
    `<T> reactor.core.publisher.Mono<T>` | RSocketRequester.RetrieveSpec.`retrieveMono(ParameterizedTypeReference<T> dataTypeRef)` Variant of `RSocketRequester.RetrieveSpec.retrieveMono(Class)` for when the dataType has to have a generic type.

  - ### Uses of ParameterizedTypeReference in org.springframework.mock.web.reactive.function.server

    Methods in org.springframework.mock.web.reactive.function.server with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `<S> reactor.core.publisher.Flux<S>` | MockServerRequest.`bodyToFlux(ParameterizedTypeReference<S> typeReference)`
    `<S> reactor.core.publisher.Mono<S>` | MockServerRequest.`bodyToMono(ParameterizedTypeReference<S> typeReference)`

  - ### Uses of ParameterizedTypeReference in org.springframework.test.web.reactive.server

    Methods in org.springframework.test.web.reactive.server with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `WebTestClient.RequestHeadersSpec<?>` | WebTestClient.RequestBodySpec.`body(Object producer, ParameterizedTypeReference<?> elementTypeRef)` Set the body from the given producer.
    `<T,S extends Publisher<T>> WebTestClient.RequestHeadersSpec<?>` | WebTestClient.RequestBodySpec.`body(S publisher, ParameterizedTypeReference<T> elementTypeRef)` Variant of `WebTestClient.RequestBodySpec.body(Publisher, Class)` that allows providing element type information with generics.
    `<B> WebTestClient.BodySpec<B,?>` | WebTestClient.ResponseSpec.`expectBody(ParameterizedTypeReference<B> bodyType)` Alternative to `WebTestClient.ResponseSpec.expectBody(Class)` that accepts information about a target type with generics.
    `<E> WebTestClient.ListBodySpec<E>` | WebTestClient.ResponseSpec.`expectBodyList(ParameterizedTypeReference<E> elementType)` Alternative to `WebTestClient.ResponseSpec.expectBodyList(Class)` that accepts information about a target type with generics.
    `<T> FluxExchangeResult<T>` | WebTestClient.ResponseSpec.`returnResult(ParameterizedTypeReference<T> elementTypeRef)` Alternative to `WebTestClient.ResponseSpec.returnResult(Class)` that accepts information about a target type with generics.

  - ### Uses of ParameterizedTypeReference in org.springframework.web.client

    Methods in org.springframework.web.client with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `<T> ResponseEntity<T>` | RestOperations.`exchange(RequestEntity<?> requestEntity, ParameterizedTypeReference<T> responseType)` Execute the request specified in the given `RequestEntity` and return the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestTemplate.`exchange(RequestEntity<?> entity, ParameterizedTypeReference<T> responseType)`
    `<T> ListenableFuture<ResponseEntity<T>>` | AsyncRestOperations.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Map<String,?> uriVariables)` Deprecated. Asynchronously execute the HTTP method to the given URI template, writing the given request entity to the request, and returns the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestOperations.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Map<String,?> uriVariables)` Execute the HTTP method to the given URI template, writing the given request entity to the request, and return the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestTemplate.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Map<String,?> uriVariables)`
    `<T> ListenableFuture<ResponseEntity<T>>` | AsyncRestTemplate.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Map<String,?> uriVariables)` Deprecated.
    `<T> ListenableFuture<ResponseEntity<T>>` | AsyncRestOperations.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Object... uriVariables)` Deprecated. Asynchronously execute the HTTP method to the given URI template, writing the given request entity to the request, and returns the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestOperations.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Object... uriVariables)` Execute the HTTP method to the given URI template, writing the given request entity to the request, and return the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestTemplate.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Object... uriVariables)`
    `<T> ListenableFuture<ResponseEntity<T>>` | AsyncRestTemplate.`exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType, Object... uriVariables)` Deprecated.
    `<T> ListenableFuture<ResponseEntity<T>>` | AsyncRestOperations.`exchange(URI url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType)` Deprecated. Asynchronously execute the HTTP method to the given URI template, writing the given request entity to the request, and returns the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestOperations.`exchange(URI url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType)` Execute the HTTP method to the given URI template, writing the given request entity to the request, and return the response as `ResponseEntity`.
    `<T> ResponseEntity<T>` | RestTemplate.`exchange(URI url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType)`
    `<T> ListenableFuture<ResponseEntity<T>>` | AsyncRestTemplate.`exchange(URI url, HttpMethod method, HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType)` Deprecated.

  - ### Uses of ParameterizedTypeReference in org.springframework.web.reactive.function

    Methods in org.springframework.web.reactive.function with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `static <T,P extends Publisher<T>> BodyInserters.MultipartInserter` | BodyInserters.`fromMultipartAsyncData(String name, P publisher, ParameterizedTypeReference<T> typeReference)` Variant of `BodyInserters.fromMultipartAsyncData(String, Publisher, Class)` that accepts a `ParameterizedTypeReference` for the element type, which allows specifying generic type information.
    `static <T> BodyInserter<T,ReactiveHttpOutputMessage>` | BodyInserters.`fromProducer(T producer, ParameterizedTypeReference<?> elementTypeRef)` Inserter to write the given producer of value(s) which must be a `Publisher` or another producer adaptable to a `Publisher` via `ReactiveAdapterRegistry`.
    `static <T,P extends Publisher<T>> BodyInserter<P,ReactiveHttpOutputMessage>` | BodyInserters.`fromPublisher(P publisher, ParameterizedTypeReference<T> elementTypeRef)` Inserter to write the given `Publisher`.
    `static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage>` | BodyExtractors.`toFlux(ParameterizedTypeReference<T> typeRef)` Variant of `BodyExtractors.toFlux(Class)` for type information with generics.
    `static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage>` | BodyExtractors.`toMono(ParameterizedTypeReference<T> elementTypeRef)` Variant of `BodyExtractors.toMono(Class)` for type information with generics.
    `<T,P extends Publisher<T>> BodyInserters.MultipartInserter` | BodyInserters.MultipartInserter.`withPublisher(String name, P publisher, ParameterizedTypeReference<T> typeReference)` Variant of `BodyInserters.MultipartInserter.withPublisher(String, Publisher, Class)` that accepts a `ParameterizedTypeReference` for the element type, which allows specifying generic type information.

  - ### Uses of ParameterizedTypeReference in org.springframework.web.reactive.function.client

    Methods in org.springframework.web.reactive.function.client with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `WebClient.RequestHeadersSpec<?>` | WebClient.RequestBodySpec.`body(Object producer, ParameterizedTypeReference<?> elementTypeRef)` Variant of `WebClient.RequestBodySpec.body(Publisher, ParameterizedTypeReference)` that allows using any producer that can be resolved to `Publisher` via `ReactiveAdapterRegistry`.
    `<S,P extends Publisher<S>> ClientRequest.Builder` | ClientRequest.Builder.`body(P publisher, ParameterizedTypeReference<S> typeReference)` Set the body of the request to the given `Publisher` and return it.
    `<T,P extends Publisher<T>> WebClient.RequestHeadersSpec<?>` | WebClient.RequestBodySpec.`body(P publisher, ParameterizedTypeReference<T> elementTypeRef)` Variant of `WebClient.RequestBodySpec.body(Publisher, Class)` that allows providing element type information with generics.
    `<T> reactor.core.publisher.Flux<T>` | WebClient.ResponseSpec.`bodyToFlux(ParameterizedTypeReference<T> elementTypeRef)` Variant of `WebClient.ResponseSpec.bodyToMono(Class)` with a `ParameterizedTypeReference`.
    `<T> reactor.core.publisher.Flux<T>` | ClientResponse.`bodyToFlux(ParameterizedTypeReference<T> elementTypeRef)` Extract the body to a `Flux`.
    `<T> reactor.core.publisher.Mono<T>` | WebClient.ResponseSpec.`bodyToMono(ParameterizedTypeReference<T> elementTypeRef)` Variant of `WebClient.ResponseSpec.bodyToMono(Class)` with a `ParameterizedTypeReference`.
    `<T> reactor.core.publisher.Mono<T>` | ClientResponse.`bodyToMono(ParameterizedTypeReference<T> elementTypeRef)` Extract the body to a `Mono`.
    `<T> reactor.core.publisher.Mono<ResponseEntity<T>>` | WebClient.ResponseSpec.`toEntity(ParameterizedTypeReference<T> bodyTypeReference)` Variant of `WebClient.ResponseSpec.bodyToMono(Class)` with a `ParameterizedTypeReference`.
    `<T> reactor.core.publisher.Mono<ResponseEntity<T>>` | ClientResponse.`toEntity(ParameterizedTypeReference<T> bodyTypeReference)` Return this response as a delayed `ResponseEntity`.
    `<T> reactor.core.publisher.Mono<ResponseEntity<reactor.core.publisher.Flux<T>>>` | WebClient.ResponseSpec.`toEntityFlux(ParameterizedTypeReference<T> elementTypeReference)` Variant of `WebClient.ResponseSpec.toEntityFlux(Class)` with a `ParameterizedTypeReference`.
    `<T> reactor.core.publisher.Mono<ResponseEntity<List<T>>>` | WebClient.ResponseSpec.`toEntityList(ParameterizedTypeReference<T> elementTypeRef)` Variant of `WebClient.ResponseSpec.toEntity(Class)` with a `ParameterizedTypeReference`.
    `<T> reactor.core.publisher.Mono<ResponseEntity<List<T>>>` | ClientResponse.`toEntityList(ParameterizedTypeReference<T> elementTypeRef)` Return this response as a delayed list of `ResponseEntity`s.

  - ### Uses of ParameterizedTypeReference in org.springframework.web.reactive.function.client.support

    Methods in org.springframework.web.reactive.function.client.support with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `<T> reactor.core.publisher.Flux<T>` | ClientResponseWrapper.`bodyToFlux(ParameterizedTypeReference<T> elementTypeRef)`
    `<T> reactor.core.publisher.Mono<T>` | ClientResponseWrapper.`bodyToMono(ParameterizedTypeReference<T> elementTypeRef)`
    `<T> reactor.core.publisher.Mono<ResponseEntity<T>>` | ClientResponseWrapper.`toEntity(ParameterizedTypeReference<T> bodyTypeReference)`
    `<T> reactor.core.publisher.Mono<ResponseEntity<List<T>>>` | ClientResponseWrapper.`toEntityList(ParameterizedTypeReference<T> elementTypeRef)`

  - ### Uses of ParameterizedTypeReference in org.springframework.web.reactive.function.server

    Methods in org.springframework.web.reactive.function.server with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `reactor.core.publisher.Mono<ServerResponse>` | ServerResponse.BodyBuilder.`body(Object producer, ParameterizedTypeReference<?> elementTypeRef)` Variant of `ServerResponse.BodyBuilder.body(Publisher, ParameterizedTypeReference)` that allows using any producer that can be resolved to `Publisher` via `ReactiveAdapterRegistry`.
    `<T,P extends Publisher<T>> reactor.core.publisher.Mono<ServerResponse>` | ServerResponse.BodyBuilder.`body(P publisher, ParameterizedTypeReference<T> elementTypeRef)` Variant of `ServerResponse.BodyBuilder.body(Publisher, Class)` that allows using any producer that can be resolved to `Publisher` via `ReactiveAdapterRegistry`.
    `<T> reactor.core.publisher.Flux<T>` | ServerRequest.`bodyToFlux(ParameterizedTypeReference<T> typeReference)` Extract the body to a `Flux`.
    `<T> reactor.core.publisher.Mono<T>` | ServerRequest.`bodyToMono(ParameterizedTypeReference<T> typeReference)` Extract the body to a `Mono`.
    `static <T> EntityResponse.Builder<T>` | EntityResponse.`fromProducer(T producer, ParameterizedTypeReference<?> typeReference)` Create a builder with the given producer.
    `static <T,P extends Publisher<T>> EntityResponse.Builder<P>` | EntityResponse.`fromPublisher(P publisher, ParameterizedTypeReference<T> typeReference)` Create a builder with the given publisher.

  - ### Uses of ParameterizedTypeReference in org.springframework.web.reactive.function.server.support

    Methods in org.springframework.web.reactive.function.server.support with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `<T> reactor.core.publisher.Flux<T>` | ServerRequestWrapper.`bodyToFlux(ParameterizedTypeReference<T> typeReference)`
    `<T> reactor.core.publisher.Mono<T>` | ServerRequestWrapper.`bodyToMono(ParameterizedTypeReference<T> typeReference)`

  - ### Uses of ParameterizedTypeReference in org.springframework.web.servlet.function

    Methods in org.springframework.web.servlet.function with parameters of type ParameterizedTypeReference
    Modifier and Type | Method and Description
    --- | ---
    `<T> T` | ServerRequest.`body(ParameterizedTypeReference<T> bodyType)` Extract the body as an object of the given type.
    `<T> ServerResponse` | ServerResponse.BodyBuilder.`body(T body, ParameterizedTypeReference<T> bodyType)` Set the body of the response to the given `Object` and return it.
    `static <T> EntityResponse.Builder<T>` | EntityResponse.`fromObject(T t, ParameterizedTypeReference<T> entityType)` Create a builder with the given object and type reference.