Interface RSocketRequester.RetrieveSpec
- All Known Subinterfaces:
RSocketRequester.RequestSpec
- Enclosing interface:
- RSocketRequester
public static interface RSocketRequester.RetrieveSpec
Spec to declare the expected output for an RSocket request.- Since:
- 5.2.2
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> reactor.core.publisher.Flux<T>
retrieveFlux(Class<T> dataType)
Perform anrequestStream
or arequestChannel
exchange depending on whether the request input is single or multi-payload.<T> reactor.core.publisher.Flux<T>
retrieveFlux(ParameterizedTypeReference<T> dataTypeRef)
Variant ofretrieveFlux(Class)
for when the dataType has to have a generic type.<T> reactor.core.publisher.Mono<T>
retrieveMono(Class<T> dataType)
Perform arequestResponse
exchange.<T> reactor.core.publisher.Mono<T>
retrieveMono(ParameterizedTypeReference<T> dataTypeRef)
Variant ofretrieveMono(Class)
for when the dataType has to have a generic type.reactor.core.publisher.Mono<Void>
send()
Perform afireAndForget
.
Method Detail
retrieveMono
<T> reactor.core.publisher.Mono<T> retrieveMono(Class<T> dataType)
Perform arequestResponse
exchange.If the return type is
Mono<Void>
, theMono
will complete after all data is consumed.Note: This method will raise an error if the request payload is a multi-valued
Publisher
as there is no many-to-one RSocket interaction.- Type Parameters:
T
- parameter for the expected data type- Parameters:
dataType
- the expected data type for the response- Returns:
- the decoded response
retrieveMono
<T> reactor.core.publisher.Mono<T> retrieveMono(ParameterizedTypeReference<T> dataTypeRef)
Variant ofretrieveMono(Class)
for when the dataType has to have a generic type. SeeParameterizedTypeReference
.
retrieveFlux
<T> reactor.core.publisher.Flux<T> retrieveFlux(Class<T> dataType)
Perform anrequestStream
or arequestChannel
exchange depending on whether the request input is single or multi-payload.If the return type is
Flux<Void>
, theFlux
will complete after all data is consumed.- Type Parameters:
T
- parameterize the expected type of values- Parameters:
dataType
- the expected type for values in the response- Returns:
- the decoded response
retrieveFlux
<T> reactor.core.publisher.Flux<T> retrieveFlux(ParameterizedTypeReference<T> dataTypeRef)
Variant ofretrieveFlux(Class)
for when the dataType has to have a generic type. SeeParameterizedTypeReference
.