Class AvroSerializationSchema<T>

    • Constructor Detail

      • AvroSerializationSchema

        protected AvroSerializationSchema​(Class<T> recordClazz,
                                          @Nullable
                                          org.apache.avro.Schema schema,
                                          AvroFormatOptions.AvroEncoding encoding)
        Creates an Avro deserialization schema.
        Parameters:
        recordClazz - class to serialize. Should be one of: SpecificRecord, GenericRecord.
        schema - writer Avro schema. Should be provided if recordClazz is GenericRecord
    • Method Detail

      • forSpecific

        public static <T extends org.apache.avro.specific.SpecificRecord> AvroSerializationSchema<T> forSpecific​(Class<T> tClass)
        Creates AvroSerializationSchema that serializes SpecificRecord using provided schema.
        Parameters:
        tClass - the type to be serialized
        Returns:
        serialized record in form of byte array
      • forGeneric

        public static AvroSerializationSchema<org.apache.avro.generic.GenericRecord> forGeneric​(org.apache.avro.Schema schema)
        Creates AvroSerializationSchema that serializes GenericRecord using provided schema.
        Parameters:
        schema - the schema that will be used for serialization
        Returns:
        serialized record in form of byte array
      • forGeneric

        public static AvroSerializationSchema<org.apache.avro.generic.GenericRecord> forGeneric​(org.apache.avro.Schema schema,
                                                                                                AvroFormatOptions.AvroEncoding encoding)
        Creates AvroSerializationSchema that serializes GenericRecord using provided schema.
        Parameters:
        schema - the schema that will be used for serialization
        Returns:
        serialized record in form of byte array
      • getSchema

        public org.apache.avro.Schema getSchema()
      • getEncoder

        protected org.apache.avro.io.Encoder getEncoder()
      • getDatumWriter

        protected org.apache.avro.generic.GenericDatumWriter<T> getDatumWriter()
      • serialize

        public byte[] serialize​(T object)
        Description copied from interface: SerializationSchema
        Serializes the incoming element to a specified type.
        Specified by:
        serialize in interface SerializationSchema<T>
        Parameters:
        object - The incoming element to be serialized
        Returns:
        The serialized element.
      • checkAvroInitialized

        protected void checkAvroInitialized()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object