lib/vertebrae/connection.rb in vertebrae-1.0.2 vs lib/vertebrae/connection.rb in vertebrae-1.0.4

- old
+ new

@@ -32,47 +32,25 @@ def options=(options) @options = options @configuration = Vertebrae::Configuration.new(options) end - # Default middleware stack that uses default adapter as specified at - # configuration stage. + # Returns a Faraday::Connection object # - def default_middleware - Proc.new do |builder| - builder.use Faraday::Multipart::Middleware - builder.use Faraday::Request::UrlEncoded + def connection + self.faraday_connection ||= Faraday.new(configuration.faraday_options) do |f| if configuration.authenticated? - builder.use Faraday::Request::Authorization, :basic, configuration.username, configuration.password + f.request :authorization, :basic, configuration.username, configuration.password end - - builder.use Faraday::Response::Logger if ENV['DEBUG'] - + f.request :multipart + f.request :url_encoded unless options[:raw] - builder.use Faraday::Mashify::Middleware - builder.use Faraday::Response::Json + f.response :mashify + f.response :json end - builder.use Vertebrae::Response::RaiseError - builder.adapter configuration.adapter - end - end - # Exposes middleware builder to facilitate custom stacks and easy - # addition of new extensions such as cache adapter. - # - def stack(&block) - @stack ||= begin - if block_given? - Faraday::RackBuilder.new(&block) - else - Faraday::RackBuilder.new(&default_middleware) - end + f.response :raise_error + f.adapter configuration.adapter end - end - - # Returns a Faraday::Connection object - # - def connection - self.faraday_connection ||= Faraday.new(configuration.faraday_options.merge(:builder => stack)) end end end