class Akamai::Connection
Attributes
conn[RW]
Public Class Methods
new(config)
click to toggle source
# File lib/akamairb/connection.rb, line 8 def initialize(config) self.conn = Faraday.new(:url => 'https://api.ccu.akamai.com') do |faraday| faraday.headers['Content-Type'] = 'application/json' faraday.adapter Faraday.default_adapter # make requests with Net::HTTP faraday.basic_auth(config["user"],config["pass"]) end end
Public Instance Methods
progress(url)
click to toggle source
# File lib/akamairb/connection.rb, line 25 def progress url parse conn.get(url) end
progress_until_done(url) { |response| ... }
click to toggle source
# File lib/akamairb/connection.rb, line 29 def progress_until_done url loop do response = progress url yield response if block_given? break if response["purgeStatus"] == "Done" sleep response["pingAfterSeconds"] end end
purge(*urls)
click to toggle source
# File lib/akamairb/connection.rb, line 16 def purge(*urls) response = conn.post do |req| req.url '/ccu/v2/queues/default' req.body = JSON.dump({"objects" => urls.flatten}) end parse response end
purge_and_progress(*urls, &block)
click to toggle source
# File lib/akamairb/connection.rb, line 38 def purge_and_progress *urls, &block response = purge *urls progress_until_done response["progressUri"], &block end
Private Instance Methods
parse(response)
click to toggle source
# File lib/akamairb/connection.rb, line 44 def parse response JSON.parse(response.body) end