Class: EasyPing::Base
- Inherits:
-
Object
show all
- Extended by:
- Forwardable
- Includes:
- Utils
- Defined in:
- lib/easy_ping/base.rb
Constant Summary
collapse
- DEFAULTS =
{
'api_base' => 'https://api.pingplusplus.com',
'currency' => 'cny'
}
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from Utils
#indifferent_hash, #indifferent_params
Constructor Details
#initialize(options = {}) ⇒ Base
Returns a new instance of Base.
10
11
12
13
14
|
# File 'lib/easy_ping/base.rb', line 10
def initialize(options={})
@config = EasyPing::Config.new(
DEFAULTS.merge indifferent_hash(options)
)
end
|
Instance Attribute Details
#config ⇒ Object
Returns the value of attribute config.
4
5
6
|
# File 'lib/easy_ping/base.rb', line 4
def config
@config
end
|
Instance Method Details
#charge_instance ⇒ Object
24
25
26
|
# File 'lib/easy_ping/base.rb', line 24
def charge_instance
EasyPing::Charge.new(config)
end
|
16
17
18
|
# File 'lib/easy_ping/base.rb', line 16
def configure
yield config
end
|
#find(*args) ⇒ Object
Also known as:
get, find_charge, find_refund
32
33
34
35
36
37
38
39
40
41
|
# File 'lib/easy_ping/base.rb', line 32
def find(*args)
params = indifferent_params(args, 'charge_id', 'refund_id')
if params['charge_id'] && params['refund_id']
refund_instance.find(params)
elsif params['charge_id']
charge_instance.find(params)
else
raise ArgumentInvalid, "missing charge_id"
end
end
|
#from_notification(params) ⇒ Object
43
44
45
|
# File 'lib/easy_ping/base.rb', line 43
def from_notification(params)
EasyPing::Action.new(config).from_notification(params)
end
|
#refund_instance ⇒ Object
28
29
30
|
# File 'lib/easy_ping/base.rb', line 28
def refund_instance
EasyPing::Refund.new(config)
end
|
#settings ⇒ Object
20
21
22
|
# File 'lib/easy_ping/base.rb', line 20
def settings
config.to_options
end
|