grac 3.2.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/grac/client.rb +21 -1
- data/lib/grac/version.rb +1 -1
- metadata +19 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dce6c4eb73575542179fb0ad403d3d730abc9efa
|
4
|
+
data.tar.gz: 5572592f8aa53d04fc2c56569497f04792756550
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c84337bb9c57a1c9d77dcdff6d626692f4cdc2dae2a9091d014a13956f3b71e22e9012b7a999dc4bca4c086505a46a51056a066c8114fd14a35a2135556f9faa
|
7
|
+
data.tar.gz: 3d9e91062b5eb57aa9cac9ab26cebe4de3b04261443892ded6013e019683c006b9e92f43194f3b6d0d1f8ae6da773e842c4225e2377ce63fb9bf3a964eb18d27
|
data/lib/grac/client.rb
CHANGED
@@ -120,11 +120,31 @@ module Grac
|
|
120
120
|
private
|
121
121
|
|
122
122
|
def build_and_run(method, options = {})
|
123
|
-
body = options[:body]
|
123
|
+
body = prepare_body_by_content_type(options[:body])
|
124
124
|
params = @options[:params].merge(options[:params] || {})
|
125
125
|
return middleware_chain.call(@options, uri, method, params, body)
|
126
126
|
end
|
127
127
|
|
128
|
+
def headers
|
129
|
+
@options[:headers] || {}
|
130
|
+
end
|
131
|
+
|
132
|
+
def prepare_body_by_content_type(body)
|
133
|
+
return nil if body.nil? || body.empty?
|
134
|
+
|
135
|
+
case headers['Content-Type']
|
136
|
+
when /\Aapplication\/json/
|
137
|
+
return body.to_json
|
138
|
+
when /\Aapplication\/x-www-form-urlencoded/
|
139
|
+
# Typhoeus will take care of the encoding when receiving a hash
|
140
|
+
return body
|
141
|
+
else
|
142
|
+
# Do not encode other unknown Content-Types either.
|
143
|
+
# The default is JSON through the Content-Type header which is set by default.
|
144
|
+
return body
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
128
148
|
def middleware_chain
|
129
149
|
callee = self
|
130
150
|
|
data/lib/grac/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: grac
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tobias Schoknecht
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -66,20 +66,34 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '2.7'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rack
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 1.6.11
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 1.6.11
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: rack-test
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
87
|
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
89
|
+
version: 0.6.3
|
76
90
|
type: :development
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
94
|
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
96
|
+
version: 0.6.3
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: oj
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -140,7 +154,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
140
154
|
version: '0'
|
141
155
|
requirements: []
|
142
156
|
rubyforge_project:
|
143
|
-
rubygems_version: 2.
|
157
|
+
rubygems_version: 2.2.2
|
144
158
|
signing_key:
|
145
159
|
specification_version: 4
|
146
160
|
summary: Very generic client for REST API with basic error handling
|