api_connector 0.1.4.1 → 0.1.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 28bfa227c9a47672e9f6bfbff454a6610f6484ad
4
- data.tar.gz: ba78b7d8af9f1311d9ea6a9296135083e74eaa95
3
+ metadata.gz: ced916b5cc6eb12c92ce2e70f701c514618f153d
4
+ data.tar.gz: 7d7497eb7cd112bea0bb62fff10260cea191452c
5
5
  SHA512:
6
- metadata.gz: 4283da63f0d4c035f05ed4b35338ae682b4b769c4cc9586f0f43aced6fc54956e1fa3e5341c954d1ef9a70df9615ccd409321067345d83d2fcf073155d12ab8d
7
- data.tar.gz: c947ec4df9cd4aa5aa471d9ef9d4053be4db9faeafed410615a5167ae8ac702c143e3a7c4f4da73d6b11476b40221e9e9bead7ffd5864bd35b4b9b781af20df5
6
+ metadata.gz: 6bd4bac3e8db943b0f08d3b60e680013329f1bea24ad4baf474cf7ea95a6a31e88d5713691325ecb2862219962186b4265660a1008e3ab0ca263ea0410b17f87
7
+ data.tar.gz: 1dfb891a653c53289d1f2bbbbf4766d4822b35f039ebed65bd65dde96c7a3cfd319d150452d59090620dc416ca55cdddf2428bfcb1c6719b54f27f7020821f06
data/.gitignore CHANGED
@@ -35,5 +35,5 @@ build/
35
35
  # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
36
36
  .rvmrc
37
37
 
38
- .swp
39
- .swo
38
+ *.swp
39
+ *.swo
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- api_connector (0.1.1)
4
+ api_connector (0.1.4.1)
5
5
  activesupport (~> 4.2.4)
6
- rest-client
6
+ addressable (~> 2.3.8)
7
+ rest-client (~> 1.8.0)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
@@ -14,6 +15,7 @@ GEM
14
15
  minitest (~> 5.1)
15
16
  thread_safe (~> 0.3, >= 0.3.4)
16
17
  tzinfo (~> 1.1)
18
+ addressable (2.3.8)
17
19
  diff-lcs (1.2.5)
18
20
  domain_name (0.5.20160309)
19
21
  unf (>= 0.0.5, < 1.0.0)
@@ -33,4 +33,5 @@ Gem::Specification.new do |spec|
33
33
 
34
34
  spec.add_dependency 'activesupport', '~> 4.2.4'
35
35
  spec.add_dependency 'rest-client', '~> 1.8.0'
36
+ spec.add_dependency 'addressable', '~> 2.3.8'
36
37
  end
@@ -4,9 +4,9 @@ module Connectors #:nodoc:
4
4
  # === Heading
5
5
  # This class has all the common logic from <b>api connectors</b>.
6
6
  class ApiConnector
7
- attr_reader :logger, :api_client_id, :api_domain, :api_mall_id,
8
- :api_domain_format, :api_headers_token, :connection_protocol,
9
- :headers, :code, :cookies, :cookie_jar, :request, :body
7
+ attr_reader :logger, :api_client_id, :api_domain, :api_domain_format,
8
+ :api_headers_token, :connection_protocol, :headers, :code, :cookies,
9
+ :cookie_jar, :request, :body
10
10
 
11
11
  def initialize(options = {}) #:notnew:
12
12
  options.symbolize_keys!
@@ -60,19 +60,16 @@ module Connectors #:nodoc:
60
60
 
61
61
  url = (method == :get || method == :delete) ? url(endpoint,params) : url(endpoint)
62
62
 
63
- begin
64
- RestClient::Request.execute(method: method,
65
- url: url,
66
- headers: header(args[:headers]),
67
- payload: params || {}
68
- ) do |response, request, result|
69
- status = response.code == 200 ? :debug : :error
70
- #print(status, request, response.body)
71
- parse(response, endpoint)
72
- end
73
- rescue RestClient::RequestTimeout
74
- { status: '400', message: "RestClient timeout" }
75
- end
63
+ RestClient::Request.execute(method: method,
64
+ url: url,
65
+ headers: header(args[:headers]),
66
+ payload: params || {}
67
+ ) do |response, request, result|
68
+ #status = response.code == 200 ? :debug : :error
69
+ #print(status, request, response.body)
70
+ parse(response, endpoint)
71
+ end
72
+
76
73
  end
77
74
 
78
75
  def parse(response, endpoint = nil)
@@ -123,9 +120,9 @@ module Connectors #:nodoc:
123
120
  end
124
121
 
125
122
  def url_constructor endpoint, hash
126
- url = "#{@connection_protocol}://#{format(@api_domain)}/#{format(@prefix)}" << (@version ? "/#{@version}" : "") << "/#{format(endpoint)}"
123
+ url = "#{@connection_protocol}://#{format(@api_domain)}/#{format(@prefix)}" << "/#{format(endpoint)}"
127
124
  url << ("?#{parametrize(hash)}") unless hash.empty?
128
- url
125
+ Addressable::URI.parse(url).normalize.to_str
129
126
  end
130
127
 
131
128
  def parametrize hash
@@ -1,3 +1,3 @@
1
1
  module ApiConnector
2
- VERSION = "0.1.4.1"
2
+ VERSION = "0.1.4.2"
3
3
  end
data/lib/api_connector.rb CHANGED
@@ -3,6 +3,7 @@ require 'api_connector/api_connector'
3
3
  require 'active_support/core_ext/hash/keys'
4
4
  require 'logger'
5
5
  require 'rest-client'
6
+ require "addressable/uri"
6
7
 
7
8
  module ApiConnector
8
9
  def self.new(options={})
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api_connector
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4.1
4
+ version: 0.1.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Manuel Rodulfo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-03-15 00:00:00.000000000 Z
11
+ date: 2016-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ~>
81
81
  - !ruby/object:Gem::Version
82
82
  version: 1.8.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: addressable
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 2.3.8
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ~>
95
+ - !ruby/object:Gem::Version
96
+ version: 2.3.8
83
97
  description: API Connector main class for wrapping RestClient functionality
84
98
  email:
85
99
  - jm.rodulfo.salcedo@gmail.com