Class: AddressValidator::Client
- Inherits:
-
Object
- Object
- AddressValidator::Client
- Includes:
- HTTParty
- Defined in:
- lib/address_validator/client.rb
Instance Method Summary collapse
- #access_request ⇒ Object
-
#initialize ⇒ Client
constructor
A new instance of Client.
- #post(request) ⇒ Object
- #set_base_uri ⇒ Object
Constructor Details
#initialize ⇒ Client
Returns a new instance of Client.
9 10 11 12 |
# File 'lib/address_validator/client.rb', line 9 def initialize @config = AddressValidator.config set_base_uri end |
Instance Method Details
#access_request ⇒ Object
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/address_validator/client.rb', line 14 def access_request xml = Builder::XmlMarkup.new xml.instruct! xml.AccessRequest do xml.AccessLicenseNumber(@config.key) xml.UserId(@config.username) xml.Password(@config.password) end end |
#post(request) ⇒ Object
35 36 37 38 39 40 41 42 43 |
# File 'lib/address_validator/client.rb', line 35 def post(request) xml = Builder::XmlMarkup.new xml << access_request xml << request body = xml.target! api_response = self.class.post('/ups.app/xml/XAV', body: body) Response.new(api_response) end |
#set_base_uri ⇒ Object
25 26 27 28 29 30 31 32 33 |
# File 'lib/address_validator/client.rb', line 25 def set_base_uri if @config.testing endpoint = 'https://wwwcie.ups.com' else endpoint = 'https://onlinetools.ups.com' end self.class.base_uri(endpoint) end |