class Mole::Transport::BasicHttp
Constants
- CONTENT_TYPE
Attributes
host[R]
port[R]
token[R]
version[R]
Public Class Methods
new(opts = {})
click to toggle source
# File lib/orwell/mole/transport/basic_http.rb, line 11 def initialize(opts = {}) @host = opts[:host] @port = opts[:port] @token = opts[:api_token] @version = opts[:api_version] end
Public Instance Methods
perform(event)
click to toggle source
# File lib/orwell/mole/transport/basic_http.rb, line 18 def perform(event) json = event_json(event) response = post(json) success(response) end
Private Instance Methods
event_json(event)
click to toggle source
# File lib/orwell/mole/transport/basic_http.rb, line 36 def event_json(event) JSON.generate(event.to_h) end
headers()
click to toggle source
# File lib/orwell/mole/transport/basic_http.rb, line 40 def headers { 'Accept' => "#{CONTENT_TYPE}; version=#{version}", 'Content-Type' => CONTENT_TYPE, 'Orwell-Token' => token } end
post(params)
click to toggle source
# File lib/orwell/mole/transport/basic_http.rb, line 30 def post(params) Net::HTTP.start(host, port) do |http| http.post('/events', params, headers) end end
success(resp)
click to toggle source
# File lib/orwell/mole/transport/basic_http.rb, line 26 def success(resp) resp.is_a? Net::HTTPSuccess end