Interface PubSubDeserializationSchema<T>

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

    public interface PubSubDeserializationSchema<T>
    extends Serializable, org.apache.flink.api.java.typeutils.ResultTypeQueryable<T>
    The deserialization schema describes how to turn the PubsubMessages into data types (Java/Scala objects) that are processed by Flink.
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      T deserialize​(com.google.pubsub.v1.PubsubMessage message)
      Deserializes a PubsubMessage.
      default void deserialize​(com.google.pubsub.v1.PubsubMessage message, org.apache.flink.util.Collector<T> out)
      Deserializes the PubSub record.
      boolean isEndOfStream​(T nextElement)
      Method to decide whether the element signals the end of the stream.
      default void open​(org.apache.flink.api.common.serialization.DeserializationSchema.InitializationContext context)
      Initialization method for the schema.
      • Methods inherited from interface org.apache.flink.api.java.typeutils.ResultTypeQueryable

        getProducedType
    • Method Detail

      • open

        default void open​(org.apache.flink.api.common.serialization.DeserializationSchema.InitializationContext context)
                   throws Exception
        Initialization method for the schema. It is called before the actual working methods deserialize(com.google.pubsub.v1.PubsubMessage) and thus suitable for one time setup work.

        The provided DeserializationSchema.InitializationContext can be used to access additional features such as e.g. registering user metrics.

        Parameters:
        context - Contextual information that can be used during initialization.
        Throws:
        Exception
      • isEndOfStream

        boolean isEndOfStream​(T nextElement)
        Method to decide whether the element signals the end of the stream. If true is returned the element won't be emitted.
        Parameters:
        nextElement - The element to test for the end-of-stream signal.
        Returns:
        True, if the element signals end of stream, false otherwise.
      • deserialize

        T deserialize​(com.google.pubsub.v1.PubsubMessage message)
               throws Exception
        Deserializes a PubsubMessage.
        Parameters:
        message - PubsubMessage to be deserialized.
        Returns:
        The deserialized message as an object (null if the message cannot be deserialized).
        Throws:
        Exception
      • deserialize

        default void deserialize​(com.google.pubsub.v1.PubsubMessage message,
                                 org.apache.flink.util.Collector<T> out)
                          throws Exception
        Deserializes the PubSub 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.

        Parameters:
        message - PubsubMessage to be deserialized.
        out - The collector to put the resulting messages.
        Throws:
        Exception