class BankLink::Mac::Solo

Public Instance Methods

generate(version=data[query_key]) click to toggle source
# File lib/bank_link/mac/solo.rb, line 14
def generate version=data[query_key]
  settings.digest.hexdigest(request_data(version).join).upcase
end
key() click to toggle source
# File lib/bank_link/mac/solo.rb, line 10
def key
  :SOLOPMT_MAC
end
query_key() click to toggle source
# File lib/bank_link/mac/solo.rb, line 6
def query_key
  :SOLOPMT_VERSION
end
returnify(key) click to toggle source
# File lib/bank_link/mac/solo.rb, line 24
def returnify key
  key.to_s.gsub('SOLOPMT_','SOLOPMT_RETURN_')
end
verify(content) click to toggle source
# File lib/bank_link/mac/solo.rb, line 18
def verify content
  version = content[returnify(query_key)]
  check = content[returnify(key)]
  settings.digest.hexdigest(request_data(version, :response).join).upcase == check
end

Private Instance Methods

field_for(value) click to toggle source
# File lib/bank_link/mac/solo.rb, line 35
def field_for value
  "#{value}&"
end
request_data(version, type=:request) click to toggle source
# File lib/bank_link/mac/solo.rb, line 29
def request_data version, type=:request
  keys(version, type).collect { |key_name|
    field_for data[key_name].to_s
  } + [field_for(settings.private_key)]
end