Class: Solace::Serializers::TransactionDeserializer
- Inherits:
-
BaseDeserializer
- Object
- BaseDeserializer
- Solace::Serializers::TransactionDeserializer
- Defined in:
- lib/solace/serializers/transaction_deserializer.rb
Overview
Deserializes a binary transaction into a Solace::Transaction object.
Instance Attribute Summary
Attributes inherited from BaseDeserializer
Instance Method Summary collapse
-
#next_extract_message ⇒ Solace::Message
Extract the message from the transaction.
-
#next_extract_signatures ⇒ Array
Extract signatures from the transaction.
Methods inherited from BaseDeserializer
Constructor Details
This class inherits a constructor from Solace::Serializers::BaseDeserializer
Instance Method Details
#next_extract_message ⇒ Solace::Message
Extract the message from the transaction
The BufferLayout is:
- [Message (variable length)]
42 43 44 |
# File 'lib/solace/serializers/transaction_deserializer.rb', line 42 def record. = Solace::Serializers::MessageDeserializer.new(io).call end |
#next_extract_signatures ⇒ Array
Extract signatures from the transaction
The BufferLayout is:
- [Number of signatures (compact u16)]
- [Signatures (variable length)]
31 32 33 34 |
# File 'lib/solace/serializers/transaction_deserializer.rb', line 31 def next_extract_signatures count, = Codecs.decode_compact_u16(io) record.signatures = count.times.map { io.read(64) } end |