Class: UrlToPng::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/url_to_png/client.rb

Instance Method Summary collapse

Constructor Details

#initialize(inopts = Configuration.new) ⇒ Client

Returns a new instance of Client.



10
11
12
13
14
# File 'lib/url_to_png/client.rb', line 10

def initialize(inopts = Configuration.new)
  @options = defaults.merge(UrlToPng.configuration).merge(inopts)

  raise "Need to provide an API key and secret" unless @options.configured?
end

Instance Method Details

#convert(url) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/url_to_png/client.rb', line 20

def convert(url)
  uri = Addressable::URI.new(query_values: @options.query_hash.merge(url: url))
  token = Digest::MD5.hexdigest(uri.query + @options.secret_key)
  uri.path = "/v6/#{@options.api_key}/#{token}/json/"
  response = connection.get(uri.to_s)
  return Result.new(response.body)
end

#middlewareObject



16
17
18
# File 'lib/url_to_png/client.rb', line 16

def middleware
  connection.builder
end