Module: RKS::Event::Handler
- Includes:
- Support::Routable
- Defined in:
- lib/rks/event/handler.rb
Class Method Summary collapse
Methods included from Support::Concern
Class Method Details
.call(correlation_id:, event:, payload:) ⇒ Object
7 8 9 10 11 |
# File 'lib/rks/event/handler.rb', line 7 def call(correlation_id:, event:, payload:) route = router.find(event) decoded_payload = decode(payload: payload, options: route[:options]) route[:block].call(correlation_id, decoded_payload) end |
.decode(payload:, options: {}) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/rks/event/handler.rb', line 13 def decode(payload:, options: {}) if [:type] == "AVRO" Application.avro_registry.decode(payload, schema_name: [:avro][:schema_name], namespace: [:avro][:namespace]) else JSON.parse(payload) end end |