Module: AuthHMAC::Rails::ActiveResourceExtension::Connection

Defined in:
lib/auth-hmac.rb

Overview

:nodoc:

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



300
301
302
303
304
305
# File 'lib/auth-hmac.rb', line 300

def self.included(base)
  base.send :alias_method_chain, :request, :hmac
  base.class_eval do
    attr_accessor :hmac_secret, :hmac_access_id, :use_hmac
  end
end

Instance Method Details

#request_with_hmac(method, path, *arguments) ⇒ Object



307
308
309
310
311
312
313
314
315
316
# File 'lib/auth-hmac.rb', line 307

def request_with_hmac(method, path, *arguments)
  if use_hmac && hmac_access_id && hmac_secret
    arguments.last['Date'] = Time.now.httpdate if arguments.last['Date'].nil?
    temp = "Net::HTTP::#{method.to_s.capitalize}".constantize.new(path, arguments.last)
    AuthHMAC.sign!(temp, hmac_access_id, hmac_secret)
    arguments.last['Authorization'] = temp['Authorization']
  end
  
  request_without_hmac(method, path, *arguments)
end