module Ark::Connection

Public Instance Methods

delete(url, options = {}) click to toggle source
# File lib/ark/connection.rb, line 18
def delete(url, options = {})
  request :delete, url, options
end
get(url, options = {}) click to toggle source
# File lib/ark/connection.rb, line 6
def get(url, options = {})
  request :get, url, options
end
last_response() click to toggle source
# File lib/ark/connection.rb, line 26
def last_response
  @last_response if defined? @last_response
end
post(url, options = {}) click to toggle source
# File lib/ark/connection.rb, line 10
def post(url, options = {})
  request :post, url, options
end
put(url, options = {}) click to toggle source
# File lib/ark/connection.rb, line 14
def put(url, options = {})
  request :put, url, options
end
root() click to toggle source
# File lib/ark/connection.rb, line 22
def root
  "http://#{@ip}:#{@port}/"
end

Private Instance Methods

http() click to toggle source
# File lib/ark/connection.rb, line 48
def http
  connection = Faraday.new root do |conn|
    conn.headers['Content-Type'] = 'application/json'
    conn.headers[:nethash] = @nethash
    conn.headers[:version] = @version
    conn.headers[:port] = "1"

    conn.request :json

    conn.adapter Faraday.default_adapter
  end
end
request(method, path, data) click to toggle source
# File lib/ark/connection.rb, line 32
def request(method, path, data)
  request = http.send(method, path, data)

  @last_response = response = JSON.parse request.body

  if response['success'] == false
    raise response['error']
  end

  if response['status'] == false
    raise response['error']
  end

  response
end