Class AvroDeserializationSchema<T>

java.lang.Object
org.apache.flink.formats.avro.AvroDeserializationSchema<T>
Type Parameters:
T - type of record it produces
All Implemented Interfaces:
Serializable, org.apache.flink.api.common.serialization.DeserializationSchema<T>, org.apache.flink.api.java.typeutils.ResultTypeQueryable<T>
Direct Known Subclasses:
RegistryAvroDeserializationSchema

public class AvroDeserializationSchema<T> extends Object implements org.apache.flink.api.common.serialization.DeserializationSchema<T>
Deserialization schema that deserializes from Avro binary format.
See Also:
  • Method Details

    • forGeneric

      public static AvroDeserializationSchema<org.apache.avro.generic.GenericRecord> forGeneric(org.apache.avro.Schema schema)
      Creates AvroDeserializationSchema that produces GenericRecord using provided schema.
      Parameters:
      schema - schema of produced records
      Returns:
      deserialized record in form of GenericRecord
    • forGeneric

      public static AvroDeserializationSchema<org.apache.avro.generic.GenericRecord> forGeneric(org.apache.avro.Schema schema, AvroFormatOptions.AvroEncoding encoding)
      Creates AvroDeserializationSchema that produces GenericRecord using provided schema.
      Parameters:
      schema - schema of produced records
      encoding - Avro serialization approach to use for decoding
      Returns:
      deserialized record in form of GenericRecord
    • forSpecific

      public static <T extends org.apache.avro.specific.SpecificRecord> AvroDeserializationSchema<T> forSpecific(Class<T> tClass)
      Creates AvroDeserializationSchema that produces classes that were generated from avro schema.
      Parameters:
      tClass - class of record to be produced
      Returns:
      deserialized record
    • forSpecific

      public static <T extends org.apache.avro.specific.SpecificRecord> AvroDeserializationSchema<T> forSpecific(Class<T> tClass, AvroFormatOptions.AvroEncoding encoding)
      Creates AvroDeserializationSchema that produces classes that were generated from avro schema.
      Parameters:
      tClass - class of record to be produced
      encoding - Avro serialization approach to use for decoding
      Returns:
      deserialized record
    • deserialize

      public T deserialize(@Nullable byte[] message) throws IOException
      Specified by:
      deserialize in interface org.apache.flink.api.common.serialization.DeserializationSchema<T>
      Throws:
      IOException
    • isEndOfStream

      public boolean isEndOfStream(T nextElement)
      Specified by:
      isEndOfStream in interface org.apache.flink.api.common.serialization.DeserializationSchema<T>
    • getProducedType

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

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object