class SignedParameters::Builder

Public Class Methods

new(parameters, secret, separator = ';') click to toggle source
# File lib/signed_parameters/builder.rb, line 5
def initialize(parameters, secret, separator = ';')
  @parameters = parameters
  @secret = secret
  @separator = separator
end

Public Instance Methods

parameters_with_sign() click to toggle source
# File lib/signed_parameters/builder.rb, line 15
def parameters_with_sign
  used_parameters.merge :sign => sign
end
sign() click to toggle source
# File lib/signed_parameters/builder.rb, line 11
def sign
  md5
end
to_query() click to toggle source
# File lib/signed_parameters/builder.rb, line 19
def to_query
  parameters_with_sign.to_query
end

Private Instance Methods

md5() click to toggle source
# File lib/signed_parameters/builder.rb, line 41
def md5
  Digest::MD5.hexdigest sha1
end
sha1() click to toggle source
# File lib/signed_parameters/builder.rb, line 37
def sha1
  Digest::SHA1.hexdigest string_for_sign
end
sorted_parameters_values() click to toggle source
# File lib/signed_parameters/builder.rb, line 29
def sorted_parameters_values
  used_parameters.values.map(&:to_s).sort
end
string_for_sign() click to toggle source
# File lib/signed_parameters/builder.rb, line 33
def string_for_sign
  (sorted_parameters_values + [@secret]).join @separator
end
used_parameters() click to toggle source
# File lib/signed_parameters/builder.rb, line 25
def used_parameters
  @parameters.select { |k, v| v.present? }
end