lib/gooddata/bricks/middleware/restforce_middleware.rb in gooddata-0.6.3 vs lib/gooddata/bricks/middleware/restforce_middleware.rb in gooddata-0.6.4

- old
+ new

@@ -5,43 +5,46 @@ require_relative 'base_middleware' module GoodData module Bricks class RestForceMiddleware < Bricks::Middleware + DEFAULT_VERSION = '29.0' + def call(params) - username = params[:salesforce_username] - password = params[:salesforce_password] - token = params[:salesforce_token] - client_id = params[:salesforce_client_id] - client_secret = params[:salesforce_client_secret] - oauth_token = params[:salesforce_oauth_token] - refresh_token = params[:salesforce_refresh_token] - host = params[:salesforce_host] + username = params['salesforce_username'] + password = params['salesforce_password'] + token = params['salesforce_token'] + client_id = params['salesforce_client_id'] + client_secret = params['salesforce_client_secret'] + oauth_refresh_token = params['salesforce_oauth_refresh_token'] + host = params['salesforce_host'] + version = params['salesforce_api_version'] || DEFAULT_VERSION - if username && password && token - credentials = { - :username => username, - :password => password, - :security_token => token - } - elsif oauth_token && refresh_token - { - :oauth_token => oauth_token, - :refresh_token => refresh_token - } - end + credentials = if username && password && token + { + :username => username, + :password => password, + :security_token => token + } + elsif (oauth_refresh_token) && (!oauth_refresh_token.empty?) + { + :refresh_token => oauth_refresh_token + } + end - if credentials - client = credentials.merge!( - :client_id => client_id, - :client_secret => client_secret - ) - credentials[:host] = host unless host.nil? + client = if credentials + credentials.merge!( + :client_id => client_id, + :client_secret => client_secret + ) + credentials[:host] = host unless host.nil? + credentials[:api_version] = version - Restforce.log = true if params[:salesforce_client_logger] - Restforce.new(credentials) - end - @app.call(params.merge(:salesforce_client => client)) + Restforce.log = true if params['salesforce_client_logger'] + + Restforce.new(credentials) + end + @app.call(params.merge('salesforce_client' => client)) end end end end