类 BodyExtractors
java.lang.Object
cn.taketoday.web.reactive.function.BodyExtractors
Static factory methods for
BodyExtractor implementations.- 从以下版本开始:
- 4.0
- 作者:
- Arjen Poutsma, Sebastien Deleuze, Rossen Stoyanchev, Brian Clozel
-
字段概要
字段修饰符和类型字段说明private static final cn.taketoday.core.ResolvableTypeprivate static final cn.taketoday.core.ResolvableTypeprivate static final cn.taketoday.core.ResolvableTypeprivate static final cn.taketoday.core.ResolvableType -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明private static <T> HttpMessageReader<T>cast(HttpMessageReader<?> reader) private static reactor.core.publisher.Flux<cn.taketoday.core.io.buffer.DataBuffer>consumeAndCancel(ReactiveHttpInputMessage message) private static <T> HttpMessageReader<T>findReader(cn.taketoday.core.ResolvableType elementType, MediaType mediaType, BodyExtractor.Context context) private static <T> reactor.core.publisher.Flux<T>readToFlux(ReactiveHttpInputMessage message, BodyExtractor.Context context, cn.taketoday.core.ResolvableType type, HttpMessageReader<T> reader) private static <T> reactor.core.publisher.Mono<T>readToMono(ReactiveHttpInputMessage message, BodyExtractor.Context context, cn.taketoday.core.ResolvableType type, HttpMessageReader<T> reader) private static <T,S extends org.reactivestreams.Publisher<T>>
SreadWithMessageReaders(ReactiveHttpInputMessage message, BodyExtractor.Context context, cn.taketoday.core.ResolvableType elementType, Function<HttpMessageReader<T>, S> readerFunction, Function<UnsupportedMediaTypeException, S> errorFunction, Supplier<S> emptySupplier) private static <T> Supplier<reactor.core.publisher.Flux<T>>skipBodyAsFlux(ReactiveHttpInputMessage message) private static <T> Supplier<reactor.core.publisher.Mono<T>>skipBodyAsMono(ReactiveHttpInputMessage message) static BodyExtractor<reactor.core.publisher.Flux<cn.taketoday.core.io.buffer.DataBuffer>,ReactiveHttpInputMessage> Extractor that returns the rawDataBuffers.static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage> toFlux(cn.taketoday.core.ParameterizedTypeReference<T> typeRef) Variant oftoFlux(Class)for type information with generics.private static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage> toFlux(cn.taketoday.core.ResolvableType elementType) static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage> Extractor to decode the input content intoFlux<T>.static BodyExtractor<reactor.core.publisher.Mono<cn.taketoday.util.MultiValueMap<String,String>>, ReactiveHttpInputMessage> Extractor to read form data intoMultiValueMap<String, String>.static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage> toMono(cn.taketoday.core.ParameterizedTypeReference<T> elementTypeRef) Variant oftoMono(Class)for type information with generics.private static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage> toMono(cn.taketoday.core.ResolvableType elementType) static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage> Extractor to decode the input content intoMono<T>.static BodyExtractor<reactor.core.publisher.Mono<cn.taketoday.util.MultiValueMap<String,Part>>, ServerHttpRequest> Extractor to read multipart data into aMultiValueMap<String, Part>.static BodyExtractor<reactor.core.publisher.Flux<Part>,ServerHttpRequest> toParts()Extractor to read multipart data intoFlux<Part>.private static <T> reactor.core.publisher.Flux<T>
-
字段详细资料
-
FORM_DATA_TYPE
private static final cn.taketoday.core.ResolvableType FORM_DATA_TYPE -
MULTIPART_DATA_TYPE
private static final cn.taketoday.core.ResolvableType MULTIPART_DATA_TYPE -
PART_TYPE
private static final cn.taketoday.core.ResolvableType PART_TYPE -
VOID_TYPE
private static final cn.taketoday.core.ResolvableType VOID_TYPE
-
-
构造器详细资料
-
BodyExtractors
public BodyExtractors()
-
-
方法详细资料
-
toMono
public static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage> toMono(Class<? extends T> elementClass) Extractor to decode the input content intoMono<T>.- 类型参数:
T- the element type to decode to- 参数:
elementClass- the class of the element type to decode to- 返回:
BodyExtractorforMono<T>
-
toMono
public static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage> toMono(cn.taketoday.core.ParameterizedTypeReference<T> elementTypeRef) Variant oftoMono(Class)for type information with generics.- 类型参数:
T- the element type to decode to- 参数:
elementTypeRef- the type reference for the type to decode to- 返回:
BodyExtractorforMono<T>
-
toMono
private static <T> BodyExtractor<reactor.core.publisher.Mono<T>,ReactiveHttpInputMessage> toMono(cn.taketoday.core.ResolvableType elementType) -
toFlux
public static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage> toFlux(Class<? extends T> elementClass) Extractor to decode the input content intoFlux<T>.- 类型参数:
T- the element type to decode to- 参数:
elementClass- the class of the element type to decode to- 返回:
BodyExtractorforFlux<T>
-
toFlux
public static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage> toFlux(cn.taketoday.core.ParameterizedTypeReference<T> typeRef) Variant oftoFlux(Class)for type information with generics.- 类型参数:
T- the element type to decode to- 参数:
typeRef- the type reference for the type to decode to- 返回:
BodyExtractorforFlux<T>
-
toFlux
private static <T> BodyExtractor<reactor.core.publisher.Flux<T>,ReactiveHttpInputMessage> toFlux(cn.taketoday.core.ResolvableType elementType) -
toFormData
public static BodyExtractor<reactor.core.publisher.Mono<cn.taketoday.util.MultiValueMap<String,String>>, toFormData()ReactiveHttpInputMessage> Extractor to read form data intoMultiValueMap<String, String>.As of 5.1 this method can also be used on the client side to read form data from a server response (e.g. OAuth).
- 返回:
BodyExtractorfor form data
-
toMultipartData
public static BodyExtractor<reactor.core.publisher.Mono<cn.taketoday.util.MultiValueMap<String,Part>>, toMultipartData()ServerHttpRequest> Extractor to read multipart data into aMultiValueMap<String, Part>.- 返回:
BodyExtractorfor multipart data
-
toParts
Extractor to read multipart data intoFlux<Part>.- 返回:
BodyExtractorfor multipart request parts
-
toDataBuffers
public static BodyExtractor<reactor.core.publisher.Flux<cn.taketoday.core.io.buffer.DataBuffer>,ReactiveHttpInputMessage> toDataBuffers()Extractor that returns the rawDataBuffers.Note: the data buffers should be
releasedafter being used.- 返回:
BodyExtractorfor data buffers
-
readWithMessageReaders
private static <T,S extends org.reactivestreams.Publisher<T>> S readWithMessageReaders(ReactiveHttpInputMessage message, BodyExtractor.Context context, cn.taketoday.core.ResolvableType elementType, Function<HttpMessageReader<T>, S> readerFunction, Function<UnsupportedMediaTypeException, S> errorFunction, Supplier<S> emptySupplier) -
readToMono
private static <T> reactor.core.publisher.Mono<T> readToMono(ReactiveHttpInputMessage message, BodyExtractor.Context context, cn.taketoday.core.ResolvableType type, HttpMessageReader<T> reader) -
readToFlux
private static <T> reactor.core.publisher.Flux<T> readToFlux(ReactiveHttpInputMessage message, BodyExtractor.Context context, cn.taketoday.core.ResolvableType type, HttpMessageReader<T> reader) -
unsupportedErrorHandler
private static <T> reactor.core.publisher.Flux<T> unsupportedErrorHandler(ReactiveHttpInputMessage message, UnsupportedMediaTypeException ex) -
findReader
private static <T> HttpMessageReader<T> findReader(cn.taketoday.core.ResolvableType elementType, MediaType mediaType, BodyExtractor.Context context) -
cast
-
skipBodyAsFlux
private static <T> Supplier<reactor.core.publisher.Flux<T>> skipBodyAsFlux(ReactiveHttpInputMessage message) -
skipBodyAsMono
private static <T> Supplier<reactor.core.publisher.Mono<T>> skipBodyAsMono(ReactiveHttpInputMessage message) -
consumeAndCancel
private static reactor.core.publisher.Flux<cn.taketoday.core.io.buffer.DataBuffer> consumeAndCancel(ReactiveHttpInputMessage message)
-