Module: Dagger

Defined in:
lib/dagger/version.rb,
lib/dagger/wrapper.rb,
lib/dagger/response.rb,
lib/dagger/connection_manager.rb,
lib/dagger.rb

Defined Under Namespace

Modules: Response, Utils, Wrapper Classes: Client, ConnectionManager

Constant Summary collapse

MAJOR =
2
MINOR =
2
PATCH =
0
VERSION =
[MAJOR, MINOR, PATCH].join('.')
DAGGER_NAME =
"Dagger/#{VERSION}".freeze
REDIRECT_CODES =
[301, 302, 303].freeze
DEFAULT_RETRY_WAIT =

seconds

5.freeze
DEFAULT_HEADERS =
{
  'Accept'     => '*/*',
  'User-Agent' => "#{DAGGER_NAME} (Ruby Net::HTTP wrapper, like curl)"
}.freeze
DEFAULTS =
{
  open_timeout: 10,
  read_timeout: 10,
  keep_alive_timeout: 10
}.freeze

Class Method Summary collapse

Class Method Details

.delete(uri, data, options = {}) ⇒ Object



314
315
316
# File 'lib/dagger.rb', line 314

def delete(uri, data, options = {})
  request(:delete, uri, data, options)
end

.get(uri, options = {}) ⇒ Object



298
299
300
# File 'lib/dagger.rb', line 298

def get(uri, options = {})
  request(:get, uri, nil, options)
end

.open(uri, opts = {}, &block) ⇒ Object



289
290
291
292
293
294
295
296
# File 'lib/dagger.rb', line 289

def open(uri, opts = {}, &block)
  client = Client.init(uri, opts.merge(persistent: true))
  if block_given?
    client.open(&block)
    client.close
  end
  client
end

.patch(uri, data, options = {}) ⇒ Object



310
311
312
# File 'lib/dagger.rb', line 310

def patch(uri, data, options = {})
  request(:patch, uri, data, options)
end

.post(uri, data, options = {}) ⇒ Object



302
303
304
# File 'lib/dagger.rb', line 302

def post(uri, data, options = {})
  request(:post, uri, data, options)
end

.put(uri, data, options = {}) ⇒ Object



306
307
308
# File 'lib/dagger.rb', line 306

def put(uri, data, options = {})
  request(:put, uri, data, options)
end

.request(method, url, data = {}, options = {}) ⇒ Object



318
319
320
# File 'lib/dagger.rb', line 318

def request(method, url, data = {}, options = {})
  Client.init(url, options).request(method, url, data, options)
end