Hey community,
for mocking the avro schema registry we’ve override the KafkaAvroDeserializer, see code below
public class CustomerLocalKafkaAvroDeserializer extends KafkaAvroDeserializer {
@Override
public Object deserialize(String topic, byte[] bytes) {
this.schemaRegistry = getMockClient(CustomerData.SCHEMA$);
return super.deserialize(topic, bytes);
}
private static SchemaRegistryClient getMockClient(final Schema schema) {
return new MockSchemaRegistryClient() {
@Override
public ParsedSchema getSchemaBySubjectAndId(String subject, int id) {
return new AvroSchema(schema);
}
};
}
}
This worked like charm before the version 7.4.0 . After the update of the kafka-avro-serialize lib to 7.4.0 our custom deserializer is no more used, a default KafkaAvroDeserializer is instantiated instead. We are configuring the deserializer setting the value-deserializer property. Has someone figured the same issue?
Best
Boban