Class: Peddler::Client
- Inherits:
-
Object
- Object
- Peddler::Client
- Extended by:
- Forwardable
- Includes:
- Jeff
- Defined in:
- lib/peddler/client.rb
Overview
An abstract client
Subclass to implement an MWS API section.
Direct Known Subclasses
MWS::CartInformation::Client, MWS::CustomerInformation::Client, MWS::Feeds::Client, MWS::Finances::Client, MWS::FulfillmentInboundShipment::Client, MWS::FulfillmentInventory::Client, MWS::FulfillmentOutboundShipment::Client, MWS::OffAmazonPayments::Client, MWS::Orders::Client, MWS::Products::Client, MWS::Recommendations::Client, MWS::Reports::Client, MWS::Sellers::Client, MWS::Subscriptions::Client, MWS::Webstore::Client
Class Attribute Summary collapse
- .error_handler ⇒ Object readonly private
- .parser ⇒ Object private
Instance Attribute Summary collapse
-
#auth_token ⇒ String
The MWSAuthToken used to access another seller’s account.
-
#body ⇒ String
The body of the HTTP request.
-
#merchant_id ⇒ String
The merchant’s Seller ID.
-
#path ⇒ String
The HTTP path of the API.
-
#primary_marketplace_id ⇒ String
The merchant’s Marketplace ID.
- #version ⇒ Object private
Class Method Summary collapse
-
.on_error {|request, response| ... } ⇒ Object
Sets an error handler.
- .path(path = nil) ⇒ Object private
- .version(version = nil) ⇒ Object private
Instance Method Summary collapse
- #aws_endpoint ⇒ Object private
- #defaults ⇒ Object private
- #error_handler ⇒ Object private
- #headers ⇒ Object private
-
#initialize(opts = {}) ⇒ Client
constructor
Creates a new client instance.
- #marketplace ⇒ Object private
- #marketplace_id ⇒ Object deprecated Deprecated.
- #marketplace_id=(marketplace_id) ⇒ Object deprecated Deprecated.
-
#on_error {|request, response| ... } ⇒ Object
Sets an error handler.
- #operation(action = nil) ⇒ Object private
- #run ⇒ Object private
Constructor Details
#initialize(opts = {}) ⇒ Client
Creates a new client instance
84 85 86 |
# File 'lib/peddler/client.rb', line 84 def initialize(opts = {}) opts.each { |k, v| send("#{k}=", v) } end |
Class Attribute Details
.error_handler ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
40 41 42 |
# File 'lib/peddler/client.rb', line 40 def error_handler @error_handler end |
.parser ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
43 44 45 |
# File 'lib/peddler/client.rb', line 43 def parser @parser ||= Parser end |
Instance Attribute Details
#auth_token ⇒ String
The MWSAuthToken used to access another seller’s account
17 18 19 |
# File 'lib/peddler/client.rb', line 17 def auth_token @auth_token end |
#body ⇒ String
The body of the HTTP request
26 27 28 |
# File 'lib/peddler/client.rb', line 26 def body @body end |
#merchant_id ⇒ String
The merchant’s Seller ID
113 114 115 |
# File 'lib/peddler/client.rb', line 113 def merchant_id @merchant_id ||= ENV['MWS_MERCHANT_ID'] end |
#path ⇒ String
The HTTP path of the API
125 126 127 |
# File 'lib/peddler/client.rb', line 125 def path @path ||= self.class.path end |
#primary_marketplace_id ⇒ String
The merchant’s Marketplace ID
96 97 98 |
# File 'lib/peddler/client.rb', line 96 def primary_marketplace_id @primary_marketplace_id ||= ENV['MWS_MARKETPLACE_ID'] end |
#version ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
130 131 132 |
# File 'lib/peddler/client.rb', line 130 def version @version ||= self.class.version end |
Class Method Details
.on_error {|request, response| ... } ⇒ Object
Sets an error handler
62 63 64 |
# File 'lib/peddler/client.rb', line 62 def on_error(&blk) @error_handler = blk end |
.path(path = nil) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
50 51 52 |
# File 'lib/peddler/client.rb', line 50 def path(path = nil) path ? @path = path : @path ||= '/' end |
.version(version = nil) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
55 56 57 |
# File 'lib/peddler/client.rb', line 55 def version(version = nil) version ? @version = version : @version end |
Instance Method Details
#aws_endpoint ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
89 90 91 |
# File 'lib/peddler/client.rb', line 89 def aws_endpoint "https://#{host}#{path}" end |
#defaults ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
146 147 148 |
# File 'lib/peddler/client.rb', line 146 def defaults @defaults ||= { expects: 200 } end |
#error_handler ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
163 164 165 |
# File 'lib/peddler/client.rb', line 163 def error_handler @error_handler || self.class.error_handler end |
#headers ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
151 152 153 |
# File 'lib/peddler/client.rb', line 151 def headers @headers ||= {} end |
#marketplace ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
118 119 120 |
# File 'lib/peddler/client.rb', line 118 def marketplace @marketplace ||= find_marketplace end |
#marketplace_id ⇒ Object
101 102 103 |
# File 'lib/peddler/client.rb', line 101 def marketplace_id @primary_marketplace_id end |
#marketplace_id=(marketplace_id) ⇒ Object
106 107 108 |
# File 'lib/peddler/client.rb', line 106 def marketplace_id=(marketplace_id) @primary_marketplace_id = marketplace_id end |
#on_error {|request, response| ... } ⇒ Object
Sets an error handler
158 159 160 |
# File 'lib/peddler/client.rb', line 158 def on_error(&blk) @error_handler = blk end |
#operation(action = nil) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
168 169 170 |
# File 'lib/peddler/client.rb', line 168 def operation(action = nil) action ? @operation = Operation.new(action) : @operation end |
#run ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
173 174 175 176 177 178 179 180 181 |
# File 'lib/peddler/client.rb', line 173 def run opts = opts.store(:response_block, Proc.new) if block_given? res = post(opts) parser.new(res, encoding) rescue Excon::Errors::Error => e handle_error(e) end |