class Zoomify::Client

Public Class Methods

new(*args) click to toggle source
# File lib/zoomify/client.rb, line 27
def initialize(*args)
  params = Request.extract_params(args)
  raise Request.argument_error("api_key and api_secret") unless params[:api_key] && params[:api_secret]
  Zoomify.api_key = params[:api_key]
  Zoomify.api_secret = params[:api_secret]
  self.class.headers(Request.headers)
end

Private Class Methods

cater_exception(fire, url, args, query) click to toggle source
# File lib/zoomify/client.rb, line 51
def cater_exception fire, url, args, query
  begin
    args.reject!{ |arg| arg['id'] }
    params = query ? {query: args} : {body: args.to_json}
    response = send(fire.split('_')[1], url, params)
    Request.extract_errors response, fire, url, args
  rescue Net::OpenTimeout, Net::ReadTimeout, Timeout::Error => e
    raise ::Zoomify::TimeoutError.new(e.message)
  end
end