databasedotcom 1.1.0 → 1.1.1

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.
@@ -310,51 +310,53 @@ module Databasedotcom
310
310
 
311
311
  private
312
312
 
313
- def with_encoded_path_and_checked_response(path, parameters, opts = {})
314
- ensure_expected_response(opts[:expected_result_class]) do
315
- with_logging(encode_path_with_params(path, parameters), opts[:data]) do |encoded_path|
313
+ def with_encoded_path_and_checked_response(path, parameters, options = {})
314
+ ensure_expected_response(options[:expected_result_class]) do
315
+ with_logging(encode_path_with_params(path, parameters), options) do |encoded_path|
316
316
  yield(encoded_path)
317
317
  end
318
318
  end
319
319
  end
320
320
 
321
- def with_logging(encoded_path, optional_data = nil)
322
- log_request(encoded_path, optional_data)
321
+ def with_logging(encoded_path, options)
322
+ log_request(encoded_path, options)
323
323
  response = yield encoded_path
324
324
  log_response(response)
325
325
  response
326
326
  end
327
327
 
328
328
  def ensure_expected_response(expected_result_class)
329
- yield.tap do |response|
330
- unless response.is_a?(expected_result_class || Net::HTTPSuccess)
331
- if response.is_a?(Net::HTTPUnauthorized)
332
- if self.refresh_token
333
- with_encoded_path_and_checked_response("/services/oauth2/token", { :grant_type => "refresh_token", :refresh_token => self.refresh_token, :client_id => self.client_id, :client_secret => self.client_secret}) do |encoded_path|
334
- response = https_request(self.host).post(encoded_path, nil)
335
- if response.is_a?(Net::HTTPOK)
336
- parse_auth_response(response.body)
337
- end
338
- response
329
+ response = yield
330
+
331
+ unless response.is_a?(expected_result_class || Net::HTTPSuccess)
332
+ if response.is_a?(Net::HTTPUnauthorized)
333
+ if self.refresh_token
334
+ response = with_encoded_path_and_checked_response("/services/oauth2/token", { :grant_type => "refresh_token", :refresh_token => self.refresh_token, :client_id => self.client_id, :client_secret => self.client_secret}, :host => self.host) do |encoded_path|
335
+ response = https_request(self.host).post(encoded_path, nil)
336
+ if response.is_a?(Net::HTTPOK)
337
+ parse_auth_response(response.body)
339
338
  end
340
- elsif self.username && self.password
341
- with_encoded_path_and_checked_response("/services/oauth2/token", { :grant_type => "password", :username => self.username, :password => self.password, :client_id => self.client_id, :client_secret => self.client_secret}) do |encoded_path|
342
- response = https_request(self.host).post(encoded_path, nil)
343
- if response.is_a?(Net::HTTPOK)
344
- parse_auth_response(response.body)
345
- end
346
- response
339
+ response
340
+ end
341
+ elsif self.username && self.password
342
+ response = with_encoded_path_and_checked_response("/services/oauth2/token", { :grant_type => "password", :username => self.username, :password => self.password, :client_id => self.client_id, :client_secret => self.client_secret}, :host => self.host) do |encoded_path|
343
+ response = https_request(self.host).post(encoded_path, nil)
344
+ if response.is_a?(Net::HTTPOK)
345
+ parse_auth_response(response.body)
347
346
  end
347
+ response
348
348
  end
349
+ end
349
350
 
350
- if response.is_a?(Net::HTTPSuccess)
351
- response = yield
352
- end
351
+ if response.is_a?(Net::HTTPSuccess)
352
+ response = yield
353
353
  end
354
354
  end
355
355
 
356
356
  raise SalesForceError.new(response) unless response.is_a?(expected_result_class || Net::HTTPSuccess)
357
357
  end
358
+
359
+ response
358
360
  end
359
361
 
360
362
  def https_request(host=nil)
@@ -369,8 +371,9 @@ module Databasedotcom
369
371
  (parameters || {}).collect { |k, v| "#{URI.escape(k.to_s)}=#{URI.escape(v.to_s)}" }.join('&')
370
372
  end
371
373
 
372
- def log_request(path, data=nil)
373
- puts "***** REQUEST: #{path.include?(':') ? path : URI.join(self.instance_url, path)}#{data ? " => #{data}" : ''}" if self.debugging
374
+ def log_request(path, options={})
375
+ base_url = options[:host] ? "https://#{options[:host]}" : self.instance_url
376
+ puts "***** REQUEST: #{path.include?(':') ? path : URI.join(base_url, path)}#{options[:data] ? " => #{options[:data]}" : ''}" if self.debugging
374
377
  end
375
378
 
376
379
  def log_response(result)
@@ -1,3 +1,3 @@
1
1
  module Databasedotcom
2
- VERSION = "1.1.0"
2
+ VERSION = "1.1.1"
3
3
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: databasedotcom
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.1.0
5
+ version: 1.1.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Glenn Gillen, Danny Burkes & Richard Zhao
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-09-22 00:00:00 Z
13
+ date: 2011-09-23 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: multipart-post