9
10
11
12
13
14
15
16
17
18
|
# File 'lib/braintree/webhook_notification_gateway.rb', line 9
def parse(signature_string, payload)
raise InvalidSignature, "signature cannot be nil" if signature_string.nil?
raise InvalidSignature, "payload cannot be nil" if payload.nil?
if payload =~ /[^A-Za-z0-9+=\/\n]/
raise InvalidSignature, "payload contains illegal characters"
end
_verify_signature(signature_string, payload)
attributes = Xml.hash_from_xml(Base64.decode64(payload))
WebhookNotification._new(@gateway, attributes[:notification])
end
|