Class: UnivapayClientSdk::CancelHandler
- Inherits:
-
Object
- Object
- UnivapayClientSdk::CancelHandler
- Includes:
- CoreLibrary
- Defined in:
- lib/univapay_client_sdk/events/webhooks/cancel_handler.rb
Overview
CancelHandler is responsible for verifying request signatures and parsing incoming cancel events into strongly typed objects.
Instance Method Summary collapse
-
#initialize ⇒ CancelHandler
constructor
Creates a new instance of the CancelHandler.
-
#parse_event(request) ⇒ Object
Parse the event.
Constructor Details
#initialize ⇒ CancelHandler
Creates a new instance of the CancelHandler.
12 |
# File 'lib/univapay_client_sdk/events/webhooks/cancel_handler.rb', line 12 def initialize; end |
Instance Method Details
#parse_event(request) ⇒ Object
Parse the event.
@return[CancelWebhookCallback, UnknownEvent] CancelWebhookCallback for successful parsing; UnknownEvent for unknown events.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/univapay_client_sdk/events/webhooks/cancel_handler.rb', line 21 def parse_event(request) return UnknownEvent.new(['Invalid request env.']) unless request.respond_to?(:env) && request.env.is_a?(Hash) raw_body = RackRequestHelper.read_raw_body(request) return UnknownEvent.new(['Invalid request body.']) if raw_body.nil? || raw_body.empty? # Deserialize payload begin union = UnionTypeLookUp.get(:Cancel) raw = RackRequestHelper.read_raw_body(request) APIHelper.deserialize_union_type(union, raw, false, true) rescue StandardError => e UnknownEvent.new(['Deserialization failed.', e.]) end end |