Interface MetadataExtractor
- All Known Implementing Classes:
DefaultMetadataExtractor
public interface MetadataExtractor
Strategy to extract a map of value(s) fromPayload
metadata, which could be composite metadata with multiple entries. Each metadata entry is decoded based on itsMimeType
and a name is assigned to the decoded value. The resulting name-value pairs can be added to the headers of aMessage
.- Since:
- 5.2
- Author:
- Rossen Stoyanchev
- See Also:
MetadataExtractorRegistry
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Map<String,Object>
extract(io.rsocket.Payload payload, MimeType metadataMimeType)
Extract a map of values from the givenPayload
metadata.
Field Detail
ROUTE_KEY
static final String ROUTE_KEY
The key to assign to the extracted "route" of the payload.- See Also:
- Constant Field Values
Method Detail
extract
Map<String,Object> extract(io.rsocket.Payload payload, MimeType metadataMimeType)
Extract a map of values from the givenPayload
metadata. The Payload "route", if present, should be saved underROUTE_KEY
.- Parameters:
payload
- the payload whose metadata should be readmetadataMimeType
- the metadata MimeType for the connection.- Returns:
- name values pairs extracted from the metadata
- Throws:
DecodingException
- if the metadata cannot be decodedIllegalArgumentException
- if routing metadata cannot be decoded