Sha256: 68b02cf5592c38b353ae6935afd76499c5d1850eb2fa53696cdf1b5a6ed250e0
Contents?: true
Size: 963 Bytes
Versions: 2
Compression:
Stored size: 963 Bytes
Contents
require 'net/https' require 'uri' module Typekit module Connection module Adaptor class Standard def process(method, address, parameters = {}, headers = {}) klass = Net::HTTP.const_get(method.to_s.capitalize) request = klass.new(build_uri(address, parameters)) headers.each { |k, v| request[k] = v } http = Net::HTTP.new(request.uri.host, request.uri.port) http.use_ssl = true if address =~ /^https:/ response = http.request(request) [ response.code, response.to_hash, response.body ] rescue NameError raise Error, 'Invalid method' rescue SocketError raise Error, 'Connection failed' end private def build_uri(address, parameters) chunks = [ address ] chunks << Helper.build_query(parameters) unless parameters.empty? URI(chunks.join('?')) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
typekit-client-0.0.3 | lib/typekit/connection/adaptor/standard.rb |
typekit-client-0.0.2 | lib/typekit/connection/adaptor/standard.rb |