Class JacksonRocketMQHeaderMapper

java.lang.Object
com.alibaba.cloud.stream.binder.rocketmq.support.AbstractRocketMQHeaderMapper
com.alibaba.cloud.stream.binder.rocketmq.support.JacksonRocketMQHeaderMapper
All Implemented Interfaces:
RocketMQHeaderMapper

public class JacksonRocketMQHeaderMapper extends AbstractRocketMQHeaderMapper
jackson header mapper for RocketMQ. Header types are added to a special header JSON_TYPES.
Since:
2.1.1.RELEASE
Author:
caotc
  • Field Details

  • Constructor Details

    • JacksonRocketMQHeaderMapper

      public JacksonRocketMQHeaderMapper(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
    • JacksonRocketMQHeaderMapper

      public JacksonRocketMQHeaderMapper(Charset charset, com.fasterxml.jackson.databind.ObjectMapper objectMapper)
  • Method Details

    • fromHeaders

      public Map<String,String> fromHeaders(org.springframework.messaging.MessageHeaders headers)
      Description copied from interface: RocketMQHeaderMapper
      Map from the given MessageHeaders to the specified target message.
      Parameters:
      headers - the abstracted MessageHeaders.
      Returns:
      the native target message.
    • toHeaders

      public org.springframework.messaging.MessageHeaders toHeaders(Map<String,String> source)
      Description copied from interface: RocketMQHeaderMapper
      Map from the given target message to abstracted MessageHeaders.
      Parameters:
      source - the native target message.
      Returns:
      the target headers.
    • addTrustedPackages

      public void addTrustedPackages(String... packagesToTrust)
      Parameters:
      packagesToTrust - the packages to trust.
      See Also:
    • addTrustedPackages

      public void addTrustedPackages(Collection<String> packagesToTrust)
      Add packages to the trusted packages list (default java.util, java.lang) used when constructing objects from JSON. If any of the supplied packages is "*", all packages are trusted. If a class for a non-trusted package is encountered, the header is returned to the application with value of type JacksonRocketMQHeaderMapper.NonTrustedHeaderType.
      Parameters:
      packagesToTrust - the packages to trust.
    • getTrustedPackages

      public Set<String> getTrustedPackages()
    • getObjectMapper

      public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
    • trusted

      protected boolean trusted(String requestedType)