class Dock::Api::Base

Public Class Methods

connection() click to toggle source
# File lib/dock/api/endpoints/base.rb, line 13
def connection
  Dock::Api.connection
end
delete(url) click to toggle source
# File lib/dock/api/endpoints/base.rb, line 23
def delete(url)
  handle_status do
    connection.delete(url)
  end
end
get(url) click to toggle source
# File lib/dock/api/endpoints/base.rb, line 17
def get(url)
  handle_status do
    connection.get(url)
  end
end
patch(url, data) click to toggle source
# File lib/dock/api/endpoints/base.rb, line 35
def patch(url, data)
  handle_status do
    connection.patch(url, data)
  end
end
post(url, data) click to toggle source
# File lib/dock/api/endpoints/base.rb, line 29
def post(url, data)
  handle_status do
    connection.post(url, data)
  end
end

Private Class Methods

handle_status() { || ... } click to toggle source
# File lib/dock/api/endpoints/base.rb, line 43
def handle_status
  response = yield
  case response.status
  when 400 then raise(Dock::Api::BadRequest, response.body)
  when 401 then raise(Dock::Api::Unauthorized, response.body)
  when 404 then raise(Dock::Api::NotFound, response.body)
  when 405 then raise(Dock::Api::MethodNotAllowed, response.body)
  when 500 then raise(Dock::Api::RequestError, response.body)
  else
    response.body
  end
end