Module: Avromatic::Model::MessagingSerialization::Decode
- Included in:
- ClassMethods
- Defined in:
- lib/avromatic/model/messaging_serialization.rb
Overview
This module provides methods to decode an Avro-encoded value and an optional Avro-encoded key as a new model instance.
Instance Method Summary collapse
- #avro_message_attributes(*args) ⇒ Object
-
#avro_message_decode(*args) ⇒ Object
If two arguments are specified then the first is interpreted as the message key and the second is the message value.
Instance Method Details
#avro_message_attributes(*args) ⇒ Object
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/avromatic/model/messaging_serialization.rb', line 44 def (*args) , = args.size > 1 ? args : [nil, args.first] key_attributes = && avro_messaging.decode(, schema_name: key_avro_schema.fullname) value_attributes = avro_messaging .decode(, schema_name: avro_schema.fullname) value_attributes.merge!(key_attributes) if key_attributes value_attributes end |
#avro_message_decode(*args) ⇒ Object
If two arguments are specified then the first is interpreted as the message key and the second is the message value. If there is only one arg then it is used as the message value.
40 41 42 |
# File 'lib/avromatic/model/messaging_serialization.rb', line 40 def (*args) new((*args)) end |