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