public final class CharSequenceEncoder extends AbstractEncoder<CharSequence>
CharSequence
stream to a bytes stream.StringDecoder
Modifier and Type | Field and Description |
---|---|
static Charset |
DEFAULT_CHARSET
The default charset used by the encoder.
|
logger
Modifier and Type | Method and Description |
---|---|
static CharSequenceEncoder |
allMimeTypes()
Create a
CharSequenceEncoder that supports all MIME types. |
boolean |
canEncode(ResolvableType elementType,
MimeType mimeType)
Whether the encoder supports the given source element type and the MIME
type for the output stream.
|
reactor.core.publisher.Flux<DataBuffer> |
encode(org.reactivestreams.Publisher<? extends CharSequence> inputStream,
DataBufferFactory bufferFactory,
ResolvableType elementType,
MimeType mimeType,
Map<String,Object> hints)
Encode a stream of Objects of type
T into a DataBuffer
output stream. |
DataBuffer |
encodeValue(CharSequence charSequence,
DataBufferFactory bufferFactory,
ResolvableType valueType,
MimeType mimeType,
Map<String,Object> hints)
Encode an Object of type T to a data buffer.
|
static CharSequenceEncoder |
textPlainOnly()
Create a
CharSequenceEncoder that supports only "text/plain". |
getEncodableMimeTypes, getLogger, setLogger
public static final Charset DEFAULT_CHARSET
public boolean canEncode(ResolvableType elementType, @Nullable MimeType mimeType)
Encoder
canEncode
in interface Encoder<CharSequence>
canEncode
in class AbstractEncoder<CharSequence>
elementType
- the type of elements in the source streammimeType
- the MIME type for the output stream
(can be null
if not specified)true
if supported, false
otherwisepublic reactor.core.publisher.Flux<DataBuffer> encode(org.reactivestreams.Publisher<? extends CharSequence> inputStream, DataBufferFactory bufferFactory, ResolvableType elementType, @Nullable MimeType mimeType, @Nullable Map<String,Object> hints)
Encoder
T
into a DataBuffer
output stream.inputStream
- the input stream of Objects to encode. If the input should be
encoded as a single value rather than as a stream of elements, an instance of
Mono
should be used.bufferFactory
- for creating output stream DataBuffer
'selementType
- the expected type of elements in the input stream;
this type must have been previously passed to the Encoder.canEncode(org.springframework.core.ResolvableType, org.springframework.util.MimeType)
method and it must have returned true
.mimeType
- the MIME type for the output content (optional)hints
- additional information about how to encodepublic DataBuffer encodeValue(CharSequence charSequence, DataBufferFactory bufferFactory, ResolvableType valueType, @Nullable MimeType mimeType, @Nullable Map<String,Object> hints)
Encoder
By default this method raises UnsupportedOperationException
and it is expected that some encoders cannot produce a single buffer or
cannot do so synchronously (e.g. encoding a Resource
).
charSequence
- the value to be encodedbufferFactory
- for creating the output DataBuffer
valueType
- the type for the value being encodedmimeType
- the MIME type for the output content (optional)hints
- additional information about how to encodepublic static CharSequenceEncoder textPlainOnly()
CharSequenceEncoder
that supports only "text/plain".public static CharSequenceEncoder allMimeTypes()
CharSequenceEncoder
that supports all MIME types.