Class: TowerdataEmail::TowerDataDefault
- Includes:
- HTTParty
- Defined in:
- lib/towerdata_email/providers.rb
Instance Method Summary collapse
-
#initialize ⇒ TowerDataDefault
constructor
A new instance of TowerDataDefault.
- #lead_data(address) ⇒ Object
- #with_valid_response(url, opts) {|response| ... } ⇒ Object
Constructor Details
#initialize ⇒ TowerDataDefault
Returns a new instance of TowerDataDefault.
19 20 |
# File 'lib/towerdata_email/providers.rb', line 19 def initialize end |
Instance Method Details
#lead_data(address) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/towerdata_email/providers.rb', line 24 def lead_data(address) opts = { headers: TowerdataEmail.config.headers, query: { license: TowerdataEmail.config.token, correct: 'email', email: address, }, timeout: TowerdataEmail.config.timeout } with_valid_response('/person', opts) do |response| TowerdataEmail::Response.new(response) end end |
#with_valid_response(url, opts) {|response| ... } ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/towerdata_email/providers.rb', line 40 def with_valid_response(url, opts, &block) response = self.class.get(url, opts) case response.code when 200 # All good when 401, 403 raise TokenInvalidError when 500 raise UnknownServerError.new("Problem with request. Response '#{response}'") else raise BadConnectionToAPIError.new("Unknown status error #{response.code}: #{response}") end yield response end |