Class Jaxb2XmlEncoder
java.lang.Object
org.springframework.core.codec.AbstractEncoder<T>
org.springframework.core.codec.AbstractSingleValueEncoder<Object>
org.springframework.http.codec.xml.Jaxb2XmlEncoder
Encode from single value to a byte stream containing XML elements.
@XmlElements
and
@XmlElement
can be used
to specify how collections should be marshalled.
- Since:
- 5.0
- Author:
- Sebastien Deleuze, Arjen Poutsma
- See Also:
-
Field Summary
Fields inherited from class org.springframework.core.codec.AbstractEncoder
logger
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
canEncode
(ResolvableType elementType, MimeType mimeType) Whether the encoder supports the given source element type and the MIME type for the output stream.protected reactor.core.publisher.Flux<DataBuffer>
encode
(Object value, DataBufferFactory bufferFactory, ResolvableType valueType, MimeType mimeType, Map<String, Object> hints) EncodeT
to an outputDataBuffer
stream.encodeValue
(Object value, DataBufferFactory bufferFactory, ResolvableType valueType, MimeType mimeType, Map<String, Object> hints) Encode an Object of type T to a data buffer.Return the configured processor for customizing Marshaller instances.void
setMarshallerProcessor
(Function<Marshaller, Marshaller> processor) Configure a processor function to customize Marshaller instances.Methods inherited from class org.springframework.core.codec.AbstractSingleValueEncoder
encode
Methods inherited from class org.springframework.core.codec.AbstractEncoder
getEncodableMimeTypes, getLogger, setLogger
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.Encoder
getEncodableMimeTypes
-
Constructor Details
-
Jaxb2XmlEncoder
public Jaxb2XmlEncoder()
-
-
Method Details
-
setMarshallerProcessor
Configure a processor function to customize Marshaller instances.- Parameters:
processor
- the function to use- Since:
- 5.1.3
-
getMarshallerProcessor
Return the configured processor for customizing Marshaller instances.- Since:
- 5.1.3
-
canEncode
Description copied from interface:Encoder
Whether the encoder supports the given source element type and the MIME type for the output stream. -
encode
protected reactor.core.publisher.Flux<DataBuffer> encode(Object value, DataBufferFactory bufferFactory, ResolvableType valueType, @Nullable MimeType mimeType, @Nullable Map<String, Object> hints) Description copied from class:AbstractSingleValueEncoder
EncodeT
to an outputDataBuffer
stream.- Specified by:
encode
in classAbstractSingleValueEncoder<Object>
- Parameters:
value
- the value to processbufferFactory
- a buffer factory used to create the outputvalueType
- the stream element type to processmimeType
- the mime type to processhints
- additional information about how to do decode, optional- Returns:
- the output stream
-
encodeValue
public DataBuffer encodeValue(Object value, DataBufferFactory bufferFactory, ResolvableType valueType, @Nullable MimeType mimeType, @Nullable Map<String, Object> hints) Description copied from interface:Encoder
Encode an Object of type T to a data buffer. This is useful for scenarios, that distinct messages (or events) are encoded and handled individually, in fully aggregated form.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 aResource
).- Parameters:
value
- the value to be encodedbufferFactory
- for creating the outputDataBuffer
valueType
- the type for the value being encodedmimeType
- the MIME type for the output content (optional)hints
- additional information about how to encode- Returns:
- the encoded content
-