Class: BlackBook::BaseRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/black_book/base_request.rb

Direct Known Subclasses

UsedCars

Class Method Summary collapse

Class Method Details

.clientObject



10
11
12
# File 'lib/black_book/base_request.rb', line 10

def client
  @@client ||= Savon.client(wsdl: wsdl_url, soap_header: credentials, log: false)
end

.credentialsObject



18
19
20
21
22
23
24
25
26
27
# File 'lib/black_book/base_request.rb', line 18

def credentials
  @@credentials ||= %|<UserCredentials xmlns="https://blackbookws.com/UsedCarWSX">
      <userid>#{BlackBook.config.user_id}</userid>
      <password>#{BlackBook.config.password}</password>
      <customer/>
      <producttype>W</producttype>
      <returncode>0</returncode>
      <returnmessage/>
    </UserCredentials>|
end

.operationsObject



14
15
16
# File 'lib/black_book/base_request.rb', line 14

def operations
  @@operations ||= client.operations
end

.request(operation, data) ⇒ Object



6
7
8
# File 'lib/black_book/base_request.rb', line 6

def request(operation, data)
  client.call(operation, message: data)
end

.wsdl_urlObject

Raises:

  • (NotImplementedError)


29
30
31
# File 'lib/black_book/base_request.rb', line 29

def wsdl_url
  raise NotImplementedError, "should have a WSDL URL"
end