Class PojoCloudEventDataMapper<T>

java.lang.Object
io.cloudevents.jackson.PojoCloudEventDataMapper<T>
Type Parameters:
T - the target type of the conversion
All Implemented Interfaces:
io.cloudevents.rw.CloudEventDataMapper<io.cloudevents.core.data.PojoCloudEventData<T>>

public class PojoCloudEventDataMapper<T> extends Object implements io.cloudevents.rw.CloudEventDataMapper<io.cloudevents.core.data.PojoCloudEventData<T>>
This class implements a CloudEventDataMapper that maps any input CloudEventData to the specified target type using the Jackson ObjectMapper.
  • Method Details

    • map

      public io.cloudevents.core.data.PojoCloudEventData<T> map(io.cloudevents.CloudEventData data) throws io.cloudevents.rw.CloudEventRWException
      Specified by:
      map in interface io.cloudevents.rw.CloudEventDataMapper<T>
      Throws:
      io.cloudevents.rw.CloudEventRWException
    • from

      public static <T> PojoCloudEventDataMapper<T> from(ObjectMapper mapper, Class<T> target)
      Creates a PojoCloudEventDataMapper mapping CloudEventData into PojoCloudEventData<T> using a Jackson ObjectMapper.

      When working with generic types (e.g. List<String>), it's better to use from(ObjectMapper, TypeReference).

      Type Parameters:
      T - POJO Type
      Parameters:
      mapper - ObjectMapper used for POJO deserialization
      target - target type as Class<T>
      Returns:
      CloudEventDataMapper
    • from

      public static <T> PojoCloudEventDataMapper<T> from(ObjectMapper mapper, com.fasterxml.jackson.core.type.TypeReference<T> target)
      Creates a PojoCloudEventDataMapper mapping CloudEventData into PojoCloudEventData<T> using a Jackson ObjectMapper.

      This overload is more suitable for mapping generic objects (e.g. List<String>), as opposed to from(ObjectMapper, Class).

      Type Parameters:
      T - POJO Type
      Parameters:
      mapper - ObjectMapper used for POJO deserialization
      target - target type as TypeReference<T>
      Returns:
      CloudEventDataMapper