Sha256: ec30359dbc3abf8747e3d04ef3087dba21529763816cc2c75f7efe3030cbfc0d
Contents?: true
Size: 1.01 KB
Versions: 2
Compression:
Stored size: 1.01 KB
Contents
require 'dynamo/client/version' require 'dynamo/error' require 'digest' require 'json' require 'httparty' module Dynamo class Client attr_reader :secret, :endpoint def initialize(secret:, endpoint: nil) @secret = secret @endpoint = endpoint || 'http://dynamo-server-api.eu-central-1.elasticbeanstalk.com' end def pdf(url, options: nil, stub: false) request = {} request[:url] = url request[:checksum] = ::Digest::SHA256.hexdigest("#{@secret}#{url}") if options.instance_of? Hash request[:options] = {} options.each do |key, value| request[:options][key.to_s.gsub(/_/, '-')] = value end end if stub return request else result = ::HTTParty.post(@endpoint, body: request.to_json, headers: { 'Content-Type' => 'application/json' }) if result.code != 200 raise ::Dynamo::Error, "remote server returned code #{result.code}" end return result.body end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dynamo-client-0.1.1 | lib/dynamo/client.rb |
dynamo-client-0.1.0 | lib/dynamo/client.rb |