I'm trying to learn if Avro currently supports deep polymorphic types like
If not, could the standard be extended?
The use case is this... I want to send an AlarmMessage, serialized as a
Message[PayloadKind]. The receiving side would have enough type data to
reconstruct the AlarmMessage (Alarm is of type Event, which is of type
PayloadKind). In other words I'd "listen" for Message[PayloadKind] and be
handed an AlarmMessage.
Of course we'd need to have schema entries for any kind of Event (or
PayloadKind child for that matter), but there'd also need to be a way to
represent these intermediate marker traits.
(A trivial json example of what I mean can be found here:https://github.com/gzoller/ScalaJack/blob/master/doc/classesAndTraits.md