class TimetrapHarvest::NetworkClient
Attributes
email[R]
password[R]
subdomain[R]
Public Class Methods
new(config)
click to toggle source
# File lib/timetrap_harvest/network_client.rb, line 8 def initialize(config) @email = config.email @password = config.password @subdomain = config.subdomain end
Public Instance Methods
harvest_add_uri()
click to toggle source
# File lib/timetrap_harvest/network_client.rb, line 26 def harvest_add_uri URI("https://#{subdomain}.harvestapp.com/daily/add") end
post(payload)
click to toggle source
# File lib/timetrap_harvest/network_client.rb, line 14 def post(payload) req = Net::HTTP::Post.new(harvest_add_uri.request_uri) req.basic_auth(email, password) req.body = payload.to_json req['Content-Type'] = 'application/json' req['Accept'] = 'application/json' res = Net::HTTP.start(harvest_add_uri.hostname, harvest_add_uri.port, use_ssl: true) do |http| http.request(req) end end