class HtmlCssToImage::Image
Public Class Methods
create(html: nil, css: nil)
click to toggle source
# File lib/html_css_to_image/image.rb, line 4 def create(html: nil, css: nil) raise ArgumentError.new "HTML and CSS are both nil" if html.nil? && css.nil? response = connection.post(resources) do |request| request.body = { html: html.to_s, css: css.to_s }.to_json end raise Error.new( "Failed to create image: #{response.status} #{response.body} " ) if response.status != 200 json = JSON.parse(response.body, symbolize_names: true) Data::Image.from(json) end
delete(id)
click to toggle source
# File lib/html_css_to_image/image.rb, line 20 def delete(id) raise ArgumentError.new "id is nil" if id.nil? response = connection.delete(resource(id)) raise Error.new( "Failed to delete image #{id}: #{response.status} #{response.body}" ) unless [202, 404].include? response.status end
Private Class Methods
connection()
click to toggle source
# File lib/html_css_to_image/image.rb, line 32 def connection @connection ||= HtmlCssToImage.connection end
resource(id)
click to toggle source
# File lib/html_css_to_image/image.rb, line 42 def resource(id) "/#{resources}/#{id}" end
resources()
click to toggle source
# File lib/html_css_to_image/image.rb, line 38 def resources "#{HtmlCssToImage::API_VERSION}/image" end