From 91817914b1c761a0a1a505eb6f6420ec6cceaa5e Mon Sep 17 00:00:00 2001 From: mokha Date: Tue, 8 May 2018 12:44:11 -0600 Subject: create Net::Hippie::Api. --- lib/net/hippie/api.rb | 26 ++++++++++++++++++++++++++ lib/net/hippie/client.rb | 6 +++++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 lib/net/hippie/api.rb (limited to 'lib/net') diff --git a/lib/net/hippie/api.rb b/lib/net/hippie/api.rb new file mode 100644 index 0000000..dbb9024 --- /dev/null +++ b/lib/net/hippie/api.rb @@ -0,0 +1,26 @@ +module Net + module Hippie + class Api + attr_reader :uri, :verify_mode + + def initialize(url, verify_none: false) + @uri = URI.parse(url) + @verify_mode = OpenSSL::SSL::VERIFY_NONE if verify_none + end + + def get + client.get(uri).body + end + + def execute(request) + client.execute(uri, request) + end + + private + + def client + @client ||= Client.new(headers: {}, verify_mode: verify_mode) + end + end + end +end diff --git a/lib/net/hippie/client.rb b/lib/net/hippie/client.rb index 5022dab..b5094c5 100644 --- a/lib/net/hippie/client.rb +++ b/lib/net/hippie/client.rb @@ -13,13 +13,15 @@ module Net headers: DEFAULT_HEADERS, key: nil, mapper: JsonMapper.new, - passphrase: nil + passphrase: nil, + verify_mode: nil ) @certificate = certificate @default_headers = headers @key = key @mapper = mapper @passphrase = passphrase + @verify_mode = verify_mode end def execute(uri, request) @@ -60,6 +62,7 @@ module Net private attr_reader :default_headers + attr_reader :verify_mode attr_reader :certificate, :key, :passphrase attr_reader :mapper @@ -68,6 +71,7 @@ module Net http = Net::HTTP.new(uri.host, uri.port) http.read_timeout = 30 http.use_ssl = uri.is_a?(URI::HTTPS) + http.verify_mode = verify_mode http.set_debug_output(Net::Hippie.logger) if certificate && key http.cert = OpenSSL::X509::Certificate.new(certificate) if certificate -- cgit v1.2.3