Class: Colppy::Client

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Includes:
CompanyActions, Digest, UserActions
Defined in:
lib/colppy/client.rb

Constant Summary collapse

SERVICES_MANIFEST =
Core::SERVICES.freeze

Constants included from Digest

Digest::MD5_DIGEST

Instance Method Summary collapse

Methods included from UserActions

#session_key, #session_params, #sign_in, #sign_out, #user=, #username

Methods included from CompanyActions

#companies, #company_by_id

Methods included from Digest

md5, valid_md5?

Constructor Details

#initialize(auth_user, auth_pass, user, mode = "sandbox") ⇒ Client

Returns a new instance of Client.



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/colppy/client.rb', line 7

def initialize(auth_user, auth_pass, user, mode = "sandbox")
  ensure_user_valid!(user)

  @auth_user = auth_user
  @auth_pass = md5(auth_pass)
  @gateway = Core::Gateway.new(mode)
  if user
    @user = user
    
  end
end

Instance Method Details

#call(service, operation, params) ⇒ Object



30
31
32
33
34
# File 'lib/colppy/client.rb', line 30

def call(service, operation, params)
  request_payload = request_base(service, operation).merge(parameters: params)

  @gateway.call(request_payload)[:response] if request_payload
end

#inspectObject



20
21
22
23
24
25
# File 'lib/colppy/client.rb', line 20

def inspect
  formatted_attrs = attr_inspect.map do |attr|
    "#{attr}: #{send(attr).inspect}"
  end
  "#<#{self.class.name} #{formatted_attrs.join(", ")}>"
end