From 9014e187ce3591a3faf1075efac830893f023e0d Mon Sep 17 00:00:00 2001 From: mo Date: Mon, 7 May 2018 14:47:06 -0600 Subject: extract json mapper. --- lib/net/hippie/client.rb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'lib/net/hippie/client.rb') diff --git a/lib/net/hippie/client.rb b/lib/net/hippie/client.rb index d36de5d..dd1f228 100644 --- a/lib/net/hippie/client.rb +++ b/lib/net/hippie/client.rb @@ -7,10 +7,11 @@ module Net 'User-Agent' => "net/hippie #{Net::Hippie::VERSION}", } - def initialize(headers: DEFAULT_HEADERS, certificate: nil, key: nil) + def initialize(headers: DEFAULT_HEADERS, certificate: nil, key: nil, mapper: JsonMapper.new) @certificate = certificate @default_headers = headers @key = key + @mapper = mapper end def execute(uri, request) @@ -50,6 +51,7 @@ module Net private attr_reader :default_headers, :certificate, :key + attr_reader :mapper def http_for(uri) http = Net::HTTP.new(uri.host, uri.port) @@ -63,13 +65,9 @@ module Net def request_for(type, uri, headers: {}, body: {}) type.new(uri, default_headers.merge(headers)).tap do |x| - x.body = map_from(body) unless body.empty? + x.body = mapper.map_from(body) unless body.empty? end end - - def map_from(hash) - JSON.generate(hash) - end end end end -- cgit v1.2.3