类 AbstractDataBufferDecoder<T>
- 类型参数:
T- the element type
- 所有已实现的接口:
Decoder<T>
- 直接已知子类:
AbstractCharSequenceDecoder,ByteArrayDecoder,ByteBufferDecoder,DataBufferDecoder,Netty5BufferDecoder,NettyByteBufDecoder,ResourceDecoder
Decoder implementations that can decode
a DataBuffer directly to the target element type.
Sub-classes must implement decode(org.reactivestreams.Publisher<cn.taketoday.core.io.buffer.DataBuffer>, cn.taketoday.core.ResolvableType, cn.taketoday.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>) to provide a way to
transform a DataBuffer to the target data type. The default
decode(org.reactivestreams.Publisher<cn.taketoday.core.io.buffer.DataBuffer>, cn.taketoday.core.ResolvableType, cn.taketoday.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>) implementation transforms each individual data buffer while
decodeToMono(org.reactivestreams.Publisher<cn.taketoday.core.io.buffer.DataBuffer>, cn.taketoday.core.ResolvableType, cn.taketoday.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>) applies "reduce" and transforms the aggregated buffer.
Sub-classes can override decode(org.reactivestreams.Publisher<cn.taketoday.core.io.buffer.DataBuffer>, cn.taketoday.core.ResolvableType, cn.taketoday.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>) in order to split the input stream
along different boundaries (e.g. on new line characters for String)
or always reduce to a single data buffer (e.g. Resource).
- 从以下版本开始:
- 4.0
- 作者:
- Rossen Stoyanchev, Harry Yang
-
字段概要
字段从类继承的字段 cn.taketoday.core.codec.AbstractDecoder
logger -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明reactor.core.publisher.Flux<T>decode(org.reactivestreams.Publisher<DataBuffer> input, ResolvableType elementType, MimeType mimeType, Map<String, Object> hints) Decode aDataBufferinput stream into a Flux ofT.reactor.core.publisher.Mono<T>decodeToMono(org.reactivestreams.Publisher<DataBuffer> input, ResolvableType elementType, MimeType mimeType, Map<String, Object> hints) Decode aDataBufferinput stream into a Mono ofT.intReturn theconfiguredbyte count limit.voidsetMaxInMemorySize(int byteCount) Configure a limit on the number of bytes that can be buffered whenever the input stream needs to be aggregated.从类继承的方法 cn.taketoday.core.codec.AbstractDecoder
canDecode, getDecodableMimeTypes, getLogger, setLogger从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 cn.taketoday.core.codec.Decoder
decode, getDecodableMimeTypes
-
字段详细资料
-
maxInMemorySize
private int maxInMemorySize
-
-
构造器详细资料
-
AbstractDataBufferDecoder
-
-
方法详细资料
-
setMaxInMemorySize
public void setMaxInMemorySize(int byteCount) Configure a limit on the number of bytes that can be buffered whenever the input stream needs to be aggregated. This can be a result of decoding to a singleDataBuffer,ByteBuffer,byte[],Resource,String, etc. It can also occur when splitting the input stream, e.g. delimited text, in which case the limit applies to data buffered between delimiters.By default this is set to 256K.
- 参数:
byteCount- the max number of bytes to buffer, or -1 for unlimited
-
getMaxInMemorySize
public int getMaxInMemorySize()Return theconfiguredbyte count limit. -
decode
public reactor.core.publisher.Flux<T> decode(org.reactivestreams.Publisher<DataBuffer> input, ResolvableType elementType, @Nullable MimeType mimeType, @Nullable Map<String, Object> hints) 从接口复制的说明:DecoderDecode aDataBufferinput stream into a Flux ofT.- 参数:
input- theDataBufferinput stream to decodeelementType- the expected type of elements in the output stream; this type must have been previously passed to theDecoder.canDecode(cn.taketoday.core.ResolvableType, cn.taketoday.util.MimeType)method and it must have returnedtrue.mimeType- the MIME type associated with the input stream (optional)hints- additional information about how to do decode- 返回:
- the output stream with decoded elements
-
decodeToMono
public reactor.core.publisher.Mono<T> decodeToMono(org.reactivestreams.Publisher<DataBuffer> input, ResolvableType elementType, @Nullable MimeType mimeType, @Nullable Map<String, Object> hints) 从接口复制的说明:DecoderDecode aDataBufferinput stream into a Mono ofT.- 指定者:
decodeToMono在接口中Decoder<T>- 覆盖:
decodeToMono在类中AbstractDecoder<T>- 参数:
input- theDataBufferinput stream to decodeelementType- the expected type of elements in the output stream; this type must have been previously passed to theDecoder.canDecode(cn.taketoday.core.ResolvableType, cn.taketoday.util.MimeType)method and it must have returnedtrue.mimeType- the MIME type associated with the input stream (optional)hints- additional information about how to do decode- 返回:
- the output stream with the decoded element
-