Module: Salesforce::Connection

Includes:
Async, Conversion, HttpMethods, RestApi, SoapApi
Defined in:
lib/salesforce/connection.rb,
lib/salesforce/connection/async.rb,
lib/salesforce/connection/rest_api.rb,
lib/salesforce/connection/soap_api.rb,
lib/salesforce/connection/conversion.rb,
lib/salesforce/connection/http_methods.rb

Defined Under Namespace

Modules: Async, Conversion, HttpMethods, RestApi, SoapApi

Class Method Summary collapse

Class Method Details

.as_logged_in_user(&block) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/salesforce/connection.rb', line 15

def self.as_logged_in_user(&block)
  count = 0 
  begin
    Salesforce::Authentication.session_id
    block.call
  rescue RestClient::Request::Unauthorized, Savon::SOAP::Fault => e
    if count < 1 && (e.message.downcase.include?("unauthorized") || e.message.downcase.include?("invalid_login"))
      count += 1
      Salesforce::Config.
      Salesforce::Authentication.logout
      retry
    else
      raise e
    end
  end

end