]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - 3rdparty/modules/aviator/feature/faraday/adapter/excon.rb
Revert "add aimonb/aviator to 3rdparty"
[dsa-puppet.git] / 3rdparty / modules / aviator / feature / faraday / adapter / excon.rb
diff --git a/3rdparty/modules/aviator/feature/faraday/adapter/excon.rb b/3rdparty/modules/aviator/feature/faraday/adapter/excon.rb
deleted file mode 100644 (file)
index db0c7c3..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-module Faraday
-  class Adapter
-    class Excon < Faraday::Adapter
-      dependency 'excon'
-
-      def initialize(app, connection_options = {})
-        @connection_options = connection_options
-        super(app)
-      end
-
-      def call(env)
-        super
-
-        opts = {}
-        if env[:url].scheme == 'https' && ssl = env[:ssl]
-          opts[:ssl_verify_peer] = !!ssl.fetch(:verify, true)
-          opts[:ssl_ca_path] = ssl[:ca_path] if ssl[:ca_path]
-          opts[:ssl_ca_file] = ssl[:ca_file] if ssl[:ca_file]
-          opts[:client_cert] = ssl[:client_cert] if ssl[:client_cert]
-          opts[:client_key]  = ssl[:client_key]  if ssl[:client_key]
-          opts[:certificate] = ssl[:certificate] if ssl[:certificate]
-          opts[:private_key] = ssl[:private_key] if ssl[:private_key]
-
-          # https://github.com/geemus/excon/issues/106
-          # https://github.com/jruby/jruby-ossl/issues/19
-          opts[:nonblock] = false
-        end
-
-        if ( req = env[:request] )
-          if req[:timeout]
-            opts[:read_timeout]      = req[:timeout]
-            opts[:connect_timeout]   = req[:timeout]
-            opts[:write_timeout]     = req[:timeout]
-          end
-
-          if req[:open_timeout]
-            opts[:connect_timeout]   = req[:open_timeout]
-            opts[:write_timeout]     = req[:open_timeout]
-          end
-
-          if req[:proxy]
-            opts[:proxy] = {
-              :host     => req[:proxy][:uri].host,
-              :port     => req[:proxy][:uri].port,
-              :scheme   => req[:proxy][:uri].scheme,
-              :user     => req[:proxy][:user],
-              :password => req[:proxy][:password]
-            }
-          end
-        end
-
-        conn = ::Excon.new(env[:url].to_s, opts.merge(@connection_options))
-
-        resp = conn.request \
-          :method  => env[:method].to_s.upcase,
-          :headers => env[:request_headers],
-          :body    => read_body(env)
-
-        save_response(env, resp.status.to_i, resp.body, resp.headers)
-
-        @app.call env
-      rescue ::Excon::Errors::SocketError => err
-        if err.message =~ /\btimeout\b/
-          raise Error::TimeoutError, err
-        elsif err.message =~ /\bcertificate\b/
-          raise Faraday::SSLError, err
-        else
-          raise Error::ConnectionFailed, err
-        end
-      rescue ::Excon::Errors::Timeout => err
-        raise Error::TimeoutError, err
-      end
-
-      # TODO: support streaming requests
-      def read_body(env)
-        env[:body].respond_to?(:read) ? env[:body].read : env[:body]
-      end
-    end
-  end
-end