Module: Excon
- Defined in:
- lib/excon.rb,
lib/excon/errors.rb,
lib/excon/socket.rb,
lib/excon/response.rb,
lib/excon/constants.rb,
lib/excon/connection.rb,
lib/excon/ssl_socket.rb,
lib/excon/standard_instrumentor.rb
Defined Under Namespace
Modules: Errors Classes: Connection, Response, SSLSocket, Socket, StandardInstrumentor
Constant Summary collapse
- VERSION =
'0.16.0'
- CHUNK_SIZE =
1 megabyte
1048576
- CR_NL =
"\r\n"
- DEFAULT_CA_FILE =
File.(File.join(File.dirname(__FILE__), "..", "..", "data", "cacert.pem"))
- DEFAULT_RETRY_LIMIT =
4
- FORCE_ENC =
CR_NL.respond_to?(:force_encoding)
- HTTP_1_1 =
" HTTP/1.1\r\n"
- HTTP_VERBS =
%w{connect delete get head options post put trace}
- HTTPS =
'https'
- NO_ENTITY =
[204, 205, 304].freeze
Class Method Summary collapse
-
.defaults ⇒ Hash
Defaults for Excon connections.
-
.defaults=(new_defaults) ⇒ Hash
Change defaults for Excon connections.
-
.mock ⇒ Object
Status of mocking.
-
.mock=(new_mock) ⇒ Object
Change the status of mocking false is the default and works as expected true returns a value from stubs or raises.
-
.new(url, params = {}) ⇒ Object
Initializes a new keep-alive session for a given remote host @param [String] url The destination URL @param [Hash<Symbol, >] params One or more option params to set on the Connection instance @return [Connection] A new Excon::Connection instance.
-
.ssl_ca_path ⇒ String
The filesystem path to the SSL Certificate Authority.
-
.ssl_ca_path=(new_ssl_ca_path) ⇒ String
Change path to the SSL Certificate Authority.
-
.ssl_verify_peer ⇒ true, false
Whether or not to verify the peer’s SSL certificate / chain.
-
.ssl_verify_peer=(new_ssl_verify_peer) ⇒ Object
Change the status of ssl peer verification.
-
.stub(request_params, response_params = nil) ⇒ Object
push an additional stub onto the list to check for mock requests @param [Hash<Symbol, >] request params to match against, omitted params match all @param [Hash<Symbol, >] response params to return from matched request or block to call with params.
-
.stubs ⇒ Object
get a list of defined stubs.
Class Method Details
.defaults ⇒ Hash
Returns defaults for Excon connections.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/excon.rb', line 24 def defaults @defaults ||= { :connect_timeout => 60, :headers => {}, :instrumentor_name => 'excon', :mock => false, :nonblock => true, :read_timeout => 60, :retry_limit => DEFAULT_RETRY_LIMIT, :ssl_ca_file => DEFAULT_CA_FILE, :ssl_verify_peer => RbConfig::CONFIG['host_os'] !~ /mswin|win32|dos|cygwin|mingw/i, :write_timeout => 60 } end |
.defaults=(new_defaults) ⇒ Hash
Change defaults for Excon connections
41 42 43 |
# File 'lib/excon.rb', line 41 def defaults=(new_defaults) @defaults = new_defaults end |
.mock ⇒ Object
Status of mocking
46 47 48 49 |
# File 'lib/excon.rb', line 46 def mock puts("Excon#mock is deprecated, pass Excon.defaults[:mock] instead (#{caller.first})") self.defaults[:mock] end |
.mock=(new_mock) ⇒ Object
Change the status of mocking false is the default and works as expected true returns a value from stubs or raises
54 55 56 57 |
# File 'lib/excon.rb', line 54 def mock=(new_mock) puts("Excon#mock is deprecated, pass Excon.defaults[:mock]= instead (#{caller.first})") self.defaults[:mock] = new_mock end |
.new(url, params = {}) ⇒ Object
Initializes a new keep-alive session for a given remote host
@param [String] url The destination URL
@param [Hash<Symbol, >] params One or more option params to set on the Connection instance
@return [Connection] A new Excon::Connection instance
90 91 92 |
# File 'lib/excon.rb', line 90 def new(url, params = {}) Excon::Connection.new(url, params) end |
.ssl_ca_path ⇒ String
Returns The filesystem path to the SSL Certificate Authority.
60 61 62 63 |
# File 'lib/excon.rb', line 60 def ssl_ca_path puts("Excon#ssl_ca_path is deprecated, use Excon.defaults[:ssl_ca_path] instead (#{caller.first})") self.defaults[:ssl_ca_path] end |
.ssl_ca_path=(new_ssl_ca_path) ⇒ String
Change path to the SSL Certificate Authority
67 68 69 70 |
# File 'lib/excon.rb', line 67 def ssl_ca_path=(new_ssl_ca_path) puts("Excon#ssl_ca_path= is deprecated, use Excon.defaults[:ssl_ca_path]= instead (#{caller.first})") self.defaults[:ssl_ca_path] = new_ssl_ca_path end |
.ssl_verify_peer ⇒ true, false
Returns Whether or not to verify the peer’s SSL certificate / chain.
73 74 75 76 |
# File 'lib/excon.rb', line 73 def ssl_verify_peer puts("Excon#ssl_verify_peer= is deprecated, use Excon.defaults[:ssl_verify_peer]= instead (#{caller.first})") self.defaults[:ssl_verify_peer] end |
.ssl_verify_peer=(new_ssl_verify_peer) ⇒ Object
Change the status of ssl peer verification
80 81 82 83 |
# File 'lib/excon.rb', line 80 def ssl_verify_peer=(new_ssl_verify_peer) puts("Excon#ssl_verify_peer is deprecated, use Excon.defaults[:ssl_verify_peer] instead (#{caller.first})") self.defaults[:ssl_verify_peer] = new_ssl_verify_peer end |
.stub(request_params, response_params = nil) ⇒ Object
push an additional stub onto the list to check for mock requests
@param [Hash<Symbol, >] request params to match against, omitted params match all
@param [Hash<Symbol, >] response params to return from matched request or block to call with params
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/excon.rb', line 97 def stub(request_params, response_params = nil) if block_given? if response_params raise(ArgumentError.new("stub requires either response_params OR a block")) else stub = [request_params, Proc.new] end elsif response_params stub = [request_params, response_params] else raise(ArgumentError.new("stub requires either response_params OR a block")) end stubs.unshift(stub) stub end |
.stubs ⇒ Object
get a list of defined stubs
114 115 116 |
# File 'lib/excon.rb', line 114 def stubs @stubs ||= [] end |