Class KafkaDeserializationSchemaWrapper<T>

  • Type Parameters:
    T - The type created by the deserialization schema.
    All Implemented Interfaces:
    Serializable, org.apache.flink.api.java.typeutils.ResultTypeQueryable<T>, KafkaDeserializationSchema<T>

    @Internal
    public class KafkaDeserializationSchemaWrapper<T>
    extends Object
    implements KafkaDeserializationSchema<T>
    A simple wrapper for using the DeserializationSchema with the KafkaDeserializationSchema interface.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      KafkaDeserializationSchemaWrapper​(org.apache.flink.api.common.serialization.DeserializationSchema<T> deserializationSchema)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      T deserialize​(org.apache.kafka.clients.consumer.ConsumerRecord<byte[],​byte[]> record)
      Deserializes the Kafka record.
      void deserialize​(org.apache.kafka.clients.consumer.ConsumerRecord<byte[],​byte[]> message, org.apache.flink.util.Collector<T> out)
      Deserializes the Kafka record.
      org.apache.flink.api.common.typeinfo.TypeInformation<T> getProducedType()  
      boolean isEndOfStream​(T nextElement)
      Method to decide whether the element signals the end of the stream.
      void open​(org.apache.flink.api.common.serialization.DeserializationSchema.InitializationContext context)
      Initialization method for the schema.
    • Constructor Detail

      • KafkaDeserializationSchemaWrapper

        public KafkaDeserializationSchemaWrapper​(org.apache.flink.api.common.serialization.DeserializationSchema<T> deserializationSchema)
    • Method Detail

      • deserialize

        public T deserialize​(org.apache.kafka.clients.consumer.ConsumerRecord<byte[],​byte[]> record)
                      throws Exception
        Description copied from interface: KafkaDeserializationSchema
        Deserializes the Kafka record.
        Specified by:
        deserialize in interface KafkaDeserializationSchema<T>
        Parameters:
        record - Kafka record to be deserialized.
        Returns:
        The deserialized message as an object (null if the message cannot be deserialized).
        Throws:
        Exception
      • deserialize

        public void deserialize​(org.apache.kafka.clients.consumer.ConsumerRecord<byte[],​byte[]> message,
                                org.apache.flink.util.Collector<T> out)
                         throws Exception
        Description copied from interface: KafkaDeserializationSchema
        Deserializes the Kafka record.

        Can output multiple records through the Collector. Note that number and size of the produced records should be relatively small. Depending on the source implementation records can be buffered in memory or collecting records might delay emitting checkpoint barrier.

        Specified by:
        deserialize in interface KafkaDeserializationSchema<T>
        Parameters:
        message - The message, as a byte array.
        out - The collector to put the resulting messages.
        Throws:
        Exception
      • isEndOfStream

        public boolean isEndOfStream​(T nextElement)
        Description copied from interface: KafkaDeserializationSchema
        Method to decide whether the element signals the end of the stream. If true is returned the element won't be emitted.
        Specified by:
        isEndOfStream in interface KafkaDeserializationSchema<T>
        Parameters:
        nextElement - The element to test for the end-of-stream signal.
        Returns:
        True, if the element signals end of stream, false otherwise.
      • getProducedType

        public org.apache.flink.api.common.typeinfo.TypeInformation<T> getProducedType()
        Specified by:
        getProducedType in interface org.apache.flink.api.java.typeutils.ResultTypeQueryable<T>