gcal4ruby 0.2.9 → 0.2.10
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.
- data/CHANGELOG +2 -0
- data/lib/gcal4ruby/base.rb +87 -65
- metadata +2 -2
data/CHANGELOG
CHANGED
data/lib/gcal4ruby/base.rb
CHANGED
@@ -111,25 +111,14 @@ module GCal4Ruby
|
|
111
111
|
header = auth_header(header)
|
112
112
|
ret = nil
|
113
113
|
location = URI.parse(url)
|
114
|
-
https = get_http_object(location)
|
115
114
|
puts "url = "+url if @debug
|
116
|
-
|
117
|
-
puts "SSL True" if @debug
|
118
|
-
https.use_ssl = true
|
119
|
-
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
120
|
-
end
|
121
|
-
puts "Starting post\nHeader: #{header}\nContent: #{content}" if @debug
|
122
|
-
https.start do |http|
|
123
|
-
ret = http.post(location.to_s, content, header)
|
124
|
-
end
|
115
|
+
ret = do_post(location, header, content)
|
125
116
|
while ret.is_a?(Net::HTTPRedirection)
|
126
|
-
puts "Redirect
|
127
|
-
|
128
|
-
ret = http.post(ret['location'], content, header)
|
129
|
-
end
|
117
|
+
puts "Redirect received, resending post" if @debug
|
118
|
+
ret = do_post(ret['location'], header, content)
|
130
119
|
end
|
131
120
|
if ret.is_a?(Net::HTTPSuccess)
|
132
|
-
puts "20x response
|
121
|
+
puts "20x response received\nResponse: \n"+ret.read_body if @debug
|
133
122
|
return ret
|
134
123
|
else
|
135
124
|
puts "invalid response received: "+ret.code if @debug
|
@@ -137,6 +126,21 @@ module GCal4Ruby
|
|
137
126
|
end
|
138
127
|
end
|
139
128
|
|
129
|
+
def do_post(url, header, content)
|
130
|
+
ret = nil
|
131
|
+
if url.is_a?(String)
|
132
|
+
location = URI.parse(url)
|
133
|
+
else
|
134
|
+
location = url
|
135
|
+
end
|
136
|
+
http = get_http_object(location)
|
137
|
+
puts "Starting post\nHeader: #{header}\n" if @debug
|
138
|
+
http.start do |ht|
|
139
|
+
ret = ht.post(location.to_s, content, header)
|
140
|
+
end
|
141
|
+
return ret
|
142
|
+
end
|
143
|
+
|
140
144
|
# Sends an HTTP PUT request. The header should be a hash of name/value pairs.
|
141
145
|
# Returns the Net::HTTPResponse object on succces, or raises the appropriate
|
142
146
|
# error if a non 20x response code is received.
|
@@ -144,31 +148,35 @@ module GCal4Ruby
|
|
144
148
|
header = auth_header(header)
|
145
149
|
ret = nil
|
146
150
|
location = URI.parse(url)
|
147
|
-
https = get_http_object(location)
|
148
151
|
puts "url = "+url if @debug
|
149
|
-
|
150
|
-
puts "SSL True" if @debug
|
151
|
-
https.use_ssl = true
|
152
|
-
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
153
|
-
end
|
154
|
-
puts "Starting post\nHeader: #{header}\nContent: #{content}" if @debug
|
155
|
-
https.start do |http|
|
156
|
-
ret = http.put(location.to_s, content, header)
|
157
|
-
end
|
152
|
+
ret = do_put(location, header, content)
|
158
153
|
while ret.is_a?(Net::HTTPRedirection)
|
159
|
-
puts "Redirect
|
160
|
-
|
161
|
-
ret = http.put(ret['location'], content, header)
|
162
|
-
end
|
154
|
+
puts "Redirect received, resending post" if @debug
|
155
|
+
ret = do_put(ret['location'], header, content)
|
163
156
|
end
|
164
157
|
if ret.is_a?(Net::HTTPSuccess)
|
165
|
-
puts "20x response
|
158
|
+
puts "20x response received\nResponse: \n"+ret.read_body if @debug
|
166
159
|
return ret
|
167
160
|
else
|
168
161
|
puts "invalid response received: "+ret.code if @debug
|
169
162
|
raise HTTPPutFailed, ret.body
|
170
163
|
end
|
171
164
|
end
|
165
|
+
|
166
|
+
def do_put(url, header, content)
|
167
|
+
ret = nil
|
168
|
+
if url.is_a?(String)
|
169
|
+
location = URI.parse(url)
|
170
|
+
else
|
171
|
+
location = url
|
172
|
+
end
|
173
|
+
http = get_http_object(location)
|
174
|
+
puts "Starting put\nHeader: #{header}\n" if @debug
|
175
|
+
http.start do |ht|
|
176
|
+
ret = ht.put(location.to_s, content, header)
|
177
|
+
end
|
178
|
+
return ret
|
179
|
+
end
|
172
180
|
|
173
181
|
# Sends an HTTP GET request. The header should be a hash of name/value pairs.
|
174
182
|
# Returns the Net::HTTPResponse object on succces, or raises the appropriate
|
@@ -177,32 +185,35 @@ module GCal4Ruby
|
|
177
185
|
header = auth_header(header)
|
178
186
|
ret = nil
|
179
187
|
location = URI.parse(url)
|
180
|
-
http = get_http_object(location)
|
181
188
|
puts "url = "+url if @debug
|
182
|
-
|
183
|
-
#fixed http/https misnaming via JohnMetta
|
184
|
-
puts "SSL True" if @debug
|
185
|
-
http.use_ssl = true
|
186
|
-
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
187
|
-
end
|
188
|
-
puts "Starting post\nHeader: #{header}\n" if @debug
|
189
|
-
http.start do |http|
|
190
|
-
ret = http.get(location.to_s, header)
|
191
|
-
end
|
189
|
+
ret = do_get(location, header)
|
192
190
|
while ret.is_a?(Net::HTTPRedirection)
|
193
|
-
puts "Redirect
|
194
|
-
|
195
|
-
ret = http.get(ret['location'], header)
|
196
|
-
end
|
191
|
+
puts "Redirect received from #{location.to_s}, resending get to #{ret['location']}" if @debug
|
192
|
+
ret = do_get(ret['location'], header)
|
197
193
|
end
|
198
194
|
if ret.is_a?(Net::HTTPSuccess)
|
199
|
-
puts "20x response
|
195
|
+
puts "20x response received\nResponse: \n"+ret.read_body if @debug
|
200
196
|
return ret
|
201
197
|
else
|
202
|
-
puts "Error
|
198
|
+
puts "Error received, resending get" if @debug
|
203
199
|
raise HTTPGetFailed, ret.body
|
204
200
|
end
|
205
201
|
end
|
202
|
+
|
203
|
+
def do_get(url, header)
|
204
|
+
ret = nil
|
205
|
+
if url.is_a?(String)
|
206
|
+
location = URI.parse(url)
|
207
|
+
else
|
208
|
+
location = url
|
209
|
+
end
|
210
|
+
http = get_http_object(location)
|
211
|
+
puts "Starting get\nHeader: #{header}\n" if @debug
|
212
|
+
http.start do |ht|
|
213
|
+
ret = ht.get(location.to_s, header)
|
214
|
+
end
|
215
|
+
return ret
|
216
|
+
end
|
206
217
|
|
207
218
|
# Sends an HTTP DELETE request. The header should be a hash of name/value pairs.
|
208
219
|
# Returns the Net::HTTPResponse object on succces, or raises the appropriate
|
@@ -211,40 +222,51 @@ module GCal4Ruby
|
|
211
222
|
header = auth_header(header)
|
212
223
|
ret = nil
|
213
224
|
location = URI.parse(url)
|
214
|
-
https = get_http_object(location)
|
215
225
|
puts "url = "+url if @debug
|
216
|
-
|
217
|
-
puts "SSL True" if @debug
|
218
|
-
https.use_ssl = true
|
219
|
-
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
220
|
-
end
|
221
|
-
puts "Starting post\nHeader: #{header}\n" if @debug
|
222
|
-
https.start do |http|
|
223
|
-
ret = http.delete(location.to_s, header)
|
224
|
-
end
|
226
|
+
ret = do_delete(location, header)
|
225
227
|
while ret.is_a?(Net::HTTPRedirection)
|
226
|
-
puts "Redirect
|
227
|
-
|
228
|
-
ret = http.delete(ret['location'], header)
|
229
|
-
end
|
228
|
+
puts "Redirect received, resending post" if @debug
|
229
|
+
ret = do_delete(ret['location'], header)
|
230
230
|
end
|
231
231
|
if ret.is_a?(Net::HTTPSuccess)
|
232
|
-
puts "20x response
|
232
|
+
puts "20x response received\nResponse: \n"+ret.read_body if @debug
|
233
233
|
return true
|
234
234
|
else
|
235
235
|
puts "invalid response received: "+ret.code if @debug
|
236
236
|
raise HTTPDeleteFailed, ret.body
|
237
237
|
end
|
238
238
|
end
|
239
|
+
|
240
|
+
def do_delete(url, header)
|
241
|
+
ret = nil
|
242
|
+
if url.is_a?(String)
|
243
|
+
location = URI.parse(url)
|
244
|
+
else
|
245
|
+
location = url
|
246
|
+
end
|
247
|
+
http = get_http_object(location)
|
248
|
+
puts "Starting get\nHeader: #{header}\n" if @debug
|
249
|
+
http.start do |ht|
|
250
|
+
ret = ht.delete(location.to_s, header)
|
251
|
+
end
|
252
|
+
return ret
|
253
|
+
end
|
239
254
|
|
240
255
|
private
|
241
256
|
|
242
257
|
def get_http_object(location)
|
243
258
|
if @proxy_info and @proxy_info.address
|
244
|
-
|
259
|
+
http = Net::HTTP.new(location.host, location.port, @proxy_info.address, @proxy_info.port, @proxy_info.username, @proxy_info.password)
|
245
260
|
else
|
246
|
-
|
247
|
-
|
261
|
+
http = Net::HTTP.new(location.host, location.port)
|
262
|
+
end
|
263
|
+
if location.scheme == 'https'
|
264
|
+
#fixed http/http misnaming via JohnMetta
|
265
|
+
puts "SSL True" if @debug
|
266
|
+
http.use_ssl = true
|
267
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
268
|
+
end
|
269
|
+
return http
|
248
270
|
end
|
249
271
|
|
250
272
|
def auth_header(header)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gcal4ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Reich
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-01-11 00:00:00 +
|
12
|
+
date: 2010-01-11 00:00:00 +11:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|