Class: Lightrail::Code

Inherits:
Object
  • Object
show all
Defined in:
lib/lightrail_client/code.rb

Class Method Summary collapse

Class Method Details

.charge(charge_params) ⇒ Object



4
5
6
# File 'lib/lightrail_client/code.rb', line 4

def self.charge(charge_params)
  Lightrail::Transaction.charge_code(charge_params, false)
end

.get_details(code) ⇒ Object



24
25
26
27
# File 'lib/lightrail_client/code.rb', line 24

def self.get_details(code)
  response = Lightrail::Connection.make_get_request_and_parse_response("codes/#{CGI::escape(code)}/details")
  response['details']
end

.get_maximum_value(code) ⇒ Object



13
14
15
16
17
18
19
20
21
22
# File 'lib/lightrail_client/code.rb', line 13

def self.get_maximum_value(code)
  code_details = self.get_details(code)
  maximum_value = 0
  code_details['valueStores'].each do |valueStore|
    if valueStore['state'] == 'ACTIVE'
      maximum_value += valueStore['value']
    end
  end
  maximum_value
end

.simulate_charge(charge_params) ⇒ Object



8
9
10
11
# File 'lib/lightrail_client/code.rb', line 8

def self.simulate_charge(charge_params)
  params_for_simulation = Lightrail::Validator.set_nsf_for_simulate!(charge_params)
  Lightrail::Transaction.charge_code(params_for_simulation, true)
end