ezapi 1.0.0 → 1.0.5

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
- SHA1:
3
- metadata.gz: 064f1530fa80c3bd897a43d94831673479aa4fee
4
- data.tar.gz: b5fd459b88a7171c60e20ab48d467257abc36c73
2
+ SHA256:
3
+ metadata.gz: 615f9978a5522badbdea4cdd4e18d66838223b74ea6c259bbe4eb8fdce6efe7b
4
+ data.tar.gz: e7be20802f2f42e491a4f8c365c8c493fd28b6467a6733dfdc174305d45019b1
5
5
  SHA512:
6
- metadata.gz: d09f36db6cdd4814e8617078b55ee5507b8286c4178cb1f441ae1595a5156fa70f68c13eabaa127d0c9b097b2686d9b92d6b9e8daf3aa46c9af6e743b23fff3c
7
- data.tar.gz: a32ba7397e64b5ccc795730e42c5469162a8f30a808574a3fce7ea80be688ddd6d50a1248b3fce26f58cfa2cbb0571cd1ca251ff034b67aa2dd2e86eab65161c
6
+ metadata.gz: 2077e55260f550008f2abfaa7ef94b6f7e7a29dc22fa5dd072901e79f53a2244d017e34f38e5a946a927758b5704b82e3eeb1b60bf4b81742b9efe77f0b9e063
7
+ data.tar.gz: bec5485f9912eec62a06052e78d25d4a69f913e69e5d31d2723b05e96120703d744a51c83e1bd68144b5db0fd730d3491123c9962626325de00a59db9fbaa0e5
@@ -30,9 +30,10 @@ Gem::Specification.new do |spec|
30
30
  spec.require_paths = ["lib"]
31
31
 
32
32
  spec.add_dependency 'rest-client', '~> 2.0'
33
- spec.add_dependency 'activesupport', '~> 5.2', '>= 4.2'
34
- spec.add_development_dependency "bundler", '~> 2.0', '>= 2.0.1'
35
- spec.add_development_dependency 'rake', '~> 13.0'
33
+ spec.add_dependency 'activesupport', '>= 4.2'
34
+ spec.add_dependency 'nokogiri', '~> 1.6', '>= 1.6.8'
35
+ spec.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.1'
36
+ spec.add_development_dependency "rake", ">= 12.3.3"
36
37
  spec.add_development_dependency "rspec", "~> 3.0"
37
38
  spec.add_development_dependency "pry", "~> 0.10.4"
38
39
  end
@@ -2,6 +2,7 @@ require 'rest-client'
2
2
  require 'json'
3
3
  require 'base64'
4
4
  require 'uri'
5
+ require 'nokogiri'
5
6
 
6
7
  module EZApi
7
8
  module Client
@@ -24,13 +25,23 @@ module EZApi
24
25
  end
25
26
 
26
27
  def request(full_url, method, params={}, headers=self.request_headers, request_arguments={})
27
- default_request = {method: method, url: full_url, payload: params.to_json, headers: headers}
28
+ response = raw_request(full_url, method, params, headers, request_arguments)
28
29
 
29
30
  begin
30
- response = RestClient::Request.execute(default_request.merge(request_arguments))
31
- JSON.parse(response) unless response.empty?
31
+ if response.headers && response.headers[:content_type] == "application/xml"
32
+ Nokogiri::XML(response.body)
33
+ else
34
+ JSON.parse(response.body) unless response.empty?
35
+ end
32
36
  rescue JSON::ParserError => e
33
37
  nil
38
+ end
39
+ end
40
+
41
+ def raw_request(full_url, method, params={}, headers=self.request_headers, request_arguments={})
42
+ default_request = {method: method, url: full_url, payload: params, headers: headers}
43
+ begin
44
+ RestClient::Request.execute(default_request.merge(request_arguments))
34
45
  rescue RestClient::ExceptionWithResponse => e
35
46
  if response_code = e.http_code and response_body = e.http_body
36
47
  handle_api_error(response_code, response_body)
@@ -1,3 +1,3 @@
1
1
  module EZApi
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ezapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicholas
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-08-27 00:00:00.000000000 Z
11
+ date: 2020-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -28,22 +28,36 @@ dependencies:
28
28
  name: activesupport
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '5.2'
33
+ version: '4.2'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
34
38
  - - ">="
35
39
  - !ruby/object:Gem::Version
36
40
  version: '4.2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: nokogiri
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.6'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 1.6.8
37
51
  type: :runtime
38
52
  prerelease: false
39
53
  version_requirements: !ruby/object:Gem::Requirement
40
54
  requirements:
41
55
  - - "~>"
42
56
  - !ruby/object:Gem::Version
43
- version: '5.2'
57
+ version: '1.6'
44
58
  - - ">="
45
59
  - !ruby/object:Gem::Version
46
- version: '4.2'
60
+ version: 1.6.8
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: bundler
49
63
  requirement: !ruby/object:Gem::Requirement
@@ -68,16 +82,16 @@ dependencies:
68
82
  name: rake
69
83
  requirement: !ruby/object:Gem::Requirement
70
84
  requirements:
71
- - - "~>"
85
+ - - ">="
72
86
  - !ruby/object:Gem::Version
73
- version: '13.0'
87
+ version: 12.3.3
74
88
  type: :development
75
89
  prerelease: false
76
90
  version_requirements: !ruby/object:Gem::Requirement
77
91
  requirements:
78
- - - "~>"
92
+ - - ">="
79
93
  - !ruby/object:Gem::Version
80
- version: '13.0'
94
+ version: 12.3.3
81
95
  - !ruby/object:Gem::Dependency
82
96
  name: rspec
83
97
  requirement: !ruby/object:Gem::Requirement
@@ -151,8 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
165
  - !ruby/object:Gem::Version
152
166
  version: '0'
153
167
  requirements: []
154
- rubyforge_project:
155
- rubygems_version: 2.6.14
168
+ rubygems_version: 3.0.6
156
169
  signing_key:
157
170
  specification_version: 4
158
171
  summary: Easily Communicate with APIs