Class: XpRubyClient::Requester
- Inherits:
-
Object
- Object
- XpRubyClient::Requester
- Defined in:
- lib/xp_ruby_client/requester.rb
Instance Method Summary collapse
- #build_payload(segments: {}, assigned: []) ⇒ Object
-
#initialize(conn) ⇒ Requester
constructor
A new instance of Requester.
- #retrieve(req_payload = nil) ⇒ Object
Constructor Details
#initialize(conn) ⇒ Requester
6 7 8 9 10 11 12 13 14 15 |
# File 'lib/xp_ruby_client/requester.rb', line 6 def initialize(conn) @sess = Patron::Session.new do |patron| patron.timeout = 30 patron.base_url = conn.base_url patron.headers = {"User-Agent" => "XpRubyClient", "Content-Type" => "application/json"} end # @sess.enable_debug "/tmp/patron.debug" build_payload(conn.to_h) end |
Instance Method Details
#build_payload(segments: {}, assigned: []) ⇒ Object
17 18 19 20 |
# File 'lib/xp_ruby_client/requester.rb', line 17 def build_payload(segments: {}, assigned: [], **) # TODO: log not used arguemnts @payload = JSON.dump({segments: segments, assigned: assigned}) end |
#retrieve(req_payload = nil) ⇒ Object
22 23 24 25 26 |
# File 'lib/xp_ruby_client/requester.rb', line 22 def retrieve(req_payload = nil) build_payload(req_payload) if req_payload resp = @sess.post("/experiments", @payload) parse_body(resp) end |