class Rubyqrpay::Parser
Constants
- NESTED_DATA_IDS
Public Class Methods
parse_payload(payload)
click to toggle source
# File lib/rubyqrpay/parser.rb, line 9 def parse_payload(payload) parse_to_params(URI.unescape payload) end
Private Class Methods
parse_to_params(payload)
click to toggle source
# File lib/rubyqrpay/parser.rb, line 15 def parse_to_params(payload) {}.tap do |params| index = 0 until payload[index + 4].nil? key = payload[index, 2] size = payload[index + 2, 2].to_i value = payload[index + 4, size] params[key] = if NESTED_DATA_IDS.include? key parse_to_params value else value end index += 4 + size end end end