Package org.springframework.core.codec
Class AbstractDecoder<T>
java.lang.Object
org.springframework.core.codec.AbstractDecoder<T>
- Type Parameters:
T
- the element type
- All Implemented Interfaces:
Decoder<T>
- Direct Known Subclasses:
AbstractDataBufferDecoder
,Jaxb2XmlDecoder
,XmlEventDecoder
Abstract base class for
Decoder
implementations.- Since:
- 5.0
- Author:
- Sebastien Deleuze, Arjen Poutsma
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
canDecode
(ResolvableType elementType, MimeType mimeType) Whether the decoder supports the given target element type and the MIME type of the source stream.reactor.core.publisher.Mono<T>
decodeToMono
(Publisher<DataBuffer> inputStream, ResolvableType elementType, MimeType mimeType, Map<String, Object> hints) Decode aDataBuffer
input stream into a Mono ofT
.Return the list of MIME types supported by this Decoder.Return the currently configured Logger.void
Set an alternative logger to use than the one based on the class name.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.core.codec.Decoder
decode, decode, getDecodableMimeTypes
-
Field Details
-
logger
-
-
Constructor Details
-
AbstractDecoder
-
-
Method Details
-
setLogger
Set an alternative logger to use than the one based on the class name.- Parameters:
logger
- the logger to use- Since:
- 5.1
-
getLogger
Return the currently configured Logger.- Since:
- 5.1
-
getDecodableMimeTypes
Description copied from interface:Decoder
Return the list of MIME types supported by this Decoder. The list may not apply to every possible target element type and calls to this method should typically be guarded viacanDecode(elementType, null)
. The list may also exclude MIME types supported only for a specific element type. Alternatively, useDecoder.getDecodableMimeTypes(ResolvableType)
for a more precise list.- Specified by:
getDecodableMimeTypes
in interfaceDecoder<T>
- Returns:
- the list of supported MIME types
-
canDecode
Description copied from interface:Decoder
Whether the decoder supports the given target element type and the MIME type of the source stream. -
decodeToMono
public reactor.core.publisher.Mono<T> decodeToMono(Publisher<DataBuffer> inputStream, ResolvableType elementType, @Nullable MimeType mimeType, @Nullable Map<String, Object> hints) Description copied from interface:Decoder
Decode aDataBuffer
input stream into a Mono ofT
.- Specified by:
decodeToMono
in interfaceDecoder<T>
- Parameters:
inputStream
- theDataBuffer
input stream to decodeelementType
- the expected type of elements in the output stream; this type must have been previously passed to theDecoder.canDecode(org.springframework.core.ResolvableType, org.springframework.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- Returns:
- the output stream with the decoded element
-