class Ethon::Easy
See curl.haxx.se/libcurl/c/libcurl-easy.html for more informations.
This is the class representing the libcurl easy interface
def finalizer(easy)
-
easy
(Easy
) -- The easy to free.
Other tags:
- Example: Free easy handle. -
def finalizer(easy) proc { Curl.slist_free_all(easy.header_list) if easy.header_list Curl.easy_cleanup(easy.handle) } end
def handle
-
(FFI::Pointer)
- A pointer to the curl easy handle.
Other tags:
- Example: Return the handle. -
def handle @handle ||= Curl.easy_init end
def initialize(options = {})
-
(Easy)
- A new Easy.
Options Hash:
(**options)
-
:verbose
(Boolean
) -- See -
:userpwd
(String
) -- See -
:useragent
(String
) -- See -
:url
(String
) -- See -
:upload
(Boolean
) -- See -
:timeout
(Integer
) -- See -
:sslversion
(String
) -- See -
:sslkeytype
(String
) -- See -
:sslkey
(String
) -- See -
:sslcerttype
(String
) -- See -
:sslcert
(String
) -- See -
:ssl_verifypeer
(Boolean
) -- See -
:ssl_verifyhost
(Integer
) -- See -
:readfunction
(String
) -- See -
:readdata
(String
) -- See -
:put
(String
) -- See -
:proxytype
(String
) -- See -
:proxyauth
(String
) -- See -
:proxy
(String
) -- See -
:postfieldsize
(Integer
) -- See -
:nosignal
(Boolean
) -- See -
:nobody
(Boolean
) -- See -
:maxredirs
(Integer
) -- See -
:interface
(String
) -- See -
:infilesize
(Integer
) -- See -
:httppost
(String
) -- See -
:httpget
(Boolean
) -- See -
:httpauth
(String
) -- See -
:followlocation
(Boolean
) -- See -
:dns_cache_timeout
(Integer
) -- See -
:customrequest
(String
) -- See -
:copypostfields
(String
) -- See -
:connecttimeout
(Integer
) -- See -
:capath
(String
) -- See -
:cainfo
(String
) -- See
Parameters:
-
options
(Hash
) -- The options to set.
Other tags:
- Example: Create a new Easy. -
def initialize(options = {}) Curl.init ObjectSpace.define_finalizer(self, self.class.finalizer(self)) set_attributes(options) end
def reset
- Example: Reset. -
def reset (instance_variables - [:@handle, :@header_list]).each do |ivar| instance_variable_set(ivar, nil) end Curl.easy_reset(handle) end
def set_attributes(options)
- See: initialize -
Parameters:
-
options
(Hash
) -- The options.
Other tags:
- Example: Set options. -
def set_attributes(options) options.each_pair do |key, value| method("#{key}=").call(value) if respond_to?("#{key}=") end end
def to_hash
-
(Hash)
- The informations hash.
def to_hash hash = {} hash[:return_code] = return_code hash[:response_header] = response_header hash[:response_body] = response_body Easies::Informations::AVAILABLE_INFORMATIONS.keys.each do |info| hash[info] = method(info).call end hash end