in CustomDeserializers/AvroExample/EventhubCaptureReader.cs [34:61]
public override IEnumerable<T> Deserialize(Stream stream)
{
IFileReader<GenericRecord> reader = null;
try
{
reader = DataFileReader<GenericRecord>.OpenReader(stream);
}
catch(Exception e)
{
this.diagnostics.WriteError(
briefMessage: "Unable to open stream as avro. Please check if the stream is from eventhub capture. https://docs.microsoft.com/en-us/azure/event-hubs/event-hubs-capture-overview ",
detailedMessage: e.Message);
throw;
}
foreach(GenericRecord genericRecord in reader.NextEntries)
{
EventDataFromCapture eventData = this.ConvertToEventDataFromCapture(genericRecord);
// deserialize records from eventdata body.
foreach (T record in this.DeserializeEventData(eventData))
{
yield return record;
}
}
reader.Dispose();
}