class Yp::SigningHashCreator
Public Class Methods
digest(str_params)
click to toggle source
# File lib/signing_hash_creator.rb, line 14 def digest(str_params) Digest::SHA512.hexdigest str_params end
encode_url_component(key)
click to toggle source
# File lib/signing_hash_creator.rb, line 26 def encode_url_component(key) ERB::Util::url_encode(key).gsub(/%20/, '+') end
new(params, signature_key)
click to toggle source
# File lib/signing_hash_creator.rb, line 3 def initialize(params, signature_key) @params = params @signature_key = signature_key end
serialize_params(params)
click to toggle source
# File lib/signing_hash_creator.rb, line 18 def serialize_params(params) params.map { |key, value| uri_query_param(key, value) }.sort.join('&') end
uri_query_param(key, value)
click to toggle source
# File lib/signing_hash_creator.rb, line 22 def uri_query_param(key, value) encode_url_component(key) + '=' + encode_url_component(value) end
Public Instance Methods
create()
click to toggle source
# File lib/signing_hash_creator.rb, line 8 def create self.class.digest(self.class.serialize_params(@params) + @signature_key) end