class Plyushkin::Service::Web

Attributes

url[RW]

Public Class Methods

new(opts={}) click to toggle source
# File lib/plyushkin/service/web.rb, line 6
def initialize(opts={})
  @url = opts.delete(:url)
end

Public Instance Methods

get(model, id) click to toggle source
# File lib/plyushkin/service/web.rb, line 10
def get(model, id)
  uri = URI("#{url}/#{model}/#{id}")
  use_ssl = true if uri.scheme == "https"

  response = Net::HTTP.start(uri.host, uri.port, 
                             :use_ssl => use_ssl) do |http|
    request = Net::HTTP::Get.new(uri.to_s)
    http.request(request)
  end

  JSON.parse(response.body)
end
put(model, id, payload) click to toggle source
# File lib/plyushkin/service/web.rb, line 23
def put(model, id, payload)
  uri = URI("#{url}/#{model}/#{id}")
  use_ssl = true if uri.scheme == "https"

  response = Net::HTTP.start(uri.host, uri.port, 
                             :use_ssl => use_ssl) do |http|
    request = Net::HTTP::Put.new(uri.to_s)
    request.body = payload.to_json
    http.request(request)
  end
end