lib/weary/resource.rb in weary-1.0.0.rc1 vs lib/weary/resource.rb in weary-1.0.0
- old
+ new
@@ -57,11 +57,11 @@
# Set up a Rack::Middleware to be used by the Request (which is
# Rack-friendly).
def use(middleware, *args, &block)
@middlewares ||= []
- @middlewares << [middleware, args, block]
+ @middlewares << [middleware, args.compact, block]
end
# Convenience method to set a User Agent Header
def user_agent(agent)
headers.update 'User-Agent' => agent
@@ -82,13 +82,13 @@
#
# key - The parameter in which to expect the consumer key (defaults to
# :consumer_key)
# token - The parameter in which to expect the user access token (defaults
# to :token)
- def oauth!(key = :consumer_key, token = :token)
+ def oauth!(key = :consumer_key, token = :token, secret = :token_secret, consumer_secret = :consumer_secret)
@authenticates = :oauth
- @credentials = [key, token]
+ @credentials = [key, token, secret, consumer_secret]
end
# Does the Resource anticipate some sort of authentication parameters?
def authenticates?
!!@authenticates
@@ -128,16 +128,16 @@
unless meets_requirements? params
credentials = pull_credentials params if authenticates?
mapping = url.keys.map {|k| [k, params.delete(k) || params.delete(k.to_sym)] }
request = Weary::Request.new url.expand(Hash[mapping]), @method do |r|
r.headers headers
+ if !@middlewares.nil? && !@middlewares.empty?
+ @middlewares.each {|middleware| r.use *middleware }
+ end
if !expected_params.empty?
r.params params.reject {|k,v| !expects? k }
end
r.send @authenticates, *credentials if authenticates?
- if !@middlewares.nil? && !@middlewares.empty?
- @middlewares.each {|middleware| r.use *middleware }
- end
end
yield request if block_given?
request
end
alias build request
\ No newline at end of file