Class: Wegift::Client
- Inherits:
-
Object
- Object
- Wegift::Client
- Defined in:
- lib/wegift/client.rb
Instance Attribute Summary collapse
-
#api_host ⇒ Object
Returns the value of attribute api_host.
-
#api_key ⇒ Object
Returns the value of attribute api_key.
-
#api_path ⇒ Object
Returns the value of attribute api_path.
-
#api_secret ⇒ Object
Returns the value of attribute api_secret.
-
#connection ⇒ Object
Returns the value of attribute connection.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ Client
constructor
supported: basic-http-auth - see: playground.wegift.io.
- #order(options) ⇒ Object
- #product(id = nil) ⇒ Object
-
#products ⇒ Object
global methods.
- #remote_code(url) ⇒ Object
- #request(method, path, payload = {}) ⇒ Object
- #stock(id) ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Client
supported: basic-http-auth - see: playground.wegift.io
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/wegift/client.rb', line 18 def initialize( = {}) @api_host = [:api_host] || 'https://playground.wegift.io' @api_path = [:api_path] || '/api/b2b-sync/v1' @api_key = [:api_key].to_s @api_secret = [:api_secret] @connection = Faraday.new(url: @api_host) do |c| c.basic_auth(@api_key, @api_secret) c.adapter Faraday.default_adapter unless [:proxy].nil? c.[:proxy] = { uri: URI([:proxy]) } end end end |
Instance Attribute Details
#api_host ⇒ Object
Returns the value of attribute api_host.
14 15 16 |
# File 'lib/wegift/client.rb', line 14 def api_host @api_host end |
#api_key ⇒ Object
Returns the value of attribute api_key.
14 15 16 |
# File 'lib/wegift/client.rb', line 14 def api_key @api_key end |
#api_path ⇒ Object
Returns the value of attribute api_path.
14 15 16 |
# File 'lib/wegift/client.rb', line 14 def api_path @api_path end |
#api_secret ⇒ Object
Returns the value of attribute api_secret.
14 15 16 |
# File 'lib/wegift/client.rb', line 14 def api_secret @api_secret end |
#connection ⇒ Object
Returns the value of attribute connection.
14 15 16 |
# File 'lib/wegift/client.rb', line 14 def connection @connection end |
Instance Method Details
#order(options) ⇒ Object
59 60 61 62 |
# File 'lib/wegift/client.rb', line 59 def order() order = Wegift::Order.new() order.post(self) end |
#product(id = nil) ⇒ Object
54 55 56 57 |
# File 'lib/wegift/client.rb', line 54 def product(id = nil) products = Wegift::Product.new(product_code: id) products.get(self) end |
#products ⇒ Object
global methods
49 50 51 52 |
# File 'lib/wegift/client.rb', line 49 def products products = Wegift::Products.new products.get(self) end |
#remote_code(url) ⇒ Object
69 70 71 72 |
# File 'lib/wegift/client.rb', line 69 def remote_code(url) code = Wegift::RemoteCode.new(url: url) code.get(self) end |
#request(method, path, payload = {}) ⇒ Object
35 36 37 38 39 40 41 42 |
# File 'lib/wegift/client.rb', line 35 def request(method, path, payload = {}) @connection.send(method) do |req| req.url [@api_path, path].join req.headers['Content-Type'] = 'application/json' req.body = payload.to_json if method.to_sym.eql?(:post) req.params = payload if method.to_sym.eql?(:get) end end |