class RegistryAvroDeserializationSchema extends AvroDeserializationSchema<T> {

	@Override
	public T deserialize(byte[] message) throws IOException {
			checkAvroInitialized();
			getInputStream().setBuffer(message);
			Schema writerSchema = schemaCoder.readSchema(getInputStream());
			Schema readerSchema = getReaderSchema();

			GenericDatumReader<T> datumReader = getDatumReader();

			datumReader.setSchema(writerSchema);
			datumReader.setExpected(readerSchema);

			return datumReader.read(null, getDecoder());
	}

	protected  RegistryAvroDeserializationSchema(Class<T> recordClazz, @Nullable Schema reader,
			SchemaCoder.SchemaCoderProvider schemaCoderProvider);

}