class ActiveRecord::Remote::Client

Attributes

action[RW]

Public Class Methods

content_type(content_type) click to toggle source
# File lib/active_record/remote/client.rb, line 15
def self.content_type(content_type)
  self.content_type = content_type
end
host(host) click to toggle source
# File lib/active_record/remote/client.rb, line 19
def self.host(host)
  self.host = host
end
new(action) click to toggle source
# File lib/active_record/remote/client.rb, line 11
def initialize(action)
  @action = action
end
read_timeout(read_timeout) click to toggle source
# File lib/active_record/remote/client.rb, line 23
def self.read_timeout(read_timeout)
  self.read_timeout = read_timeout
end
secure(secure) click to toggle source
# File lib/active_record/remote/client.rb, line 27
def self.secure(secure)
  self.secure = secure
end

Public Instance Methods

complete_request_url() click to toggle source
# File lib/active_record/remote/client.rb, line 43
def complete_request_url
  "#{http_protocol}://#{host}#{formatted_path}"
end
endpoint_path() click to toggle source
# File lib/active_record/remote/client.rb, line 51
def endpoint_path
  # define in subclass
end
formatted_action() click to toggle source
# File lib/active_record/remote/client.rb, line 35
def formatted_action
  action
end
formatted_path() click to toggle source
# File lib/active_record/remote/client.rb, line 39
def formatted_path
  "/#{endpoint_path}/#{formatted_action}"
end
http() click to toggle source
# File lib/active_record/remote/client.rb, line 31
def http
  @http ||= Net::HTTP.new(host)
end
http_protocol() click to toggle source
# File lib/active_record/remote/client.rb, line 47
def http_protocol
  secure ? "https" : "http"
end
request(request_body) click to toggle source
# File lib/active_record/remote/client.rb, line 55
def request(request_body)
  request              = Net::HTTP::Post.new(formatted_path)
  request.body         = request_body
  request.content_type = content_type
  if secure
    http.use_ssl     = true
    http.verify_mode = OpenSSL::SSL::VERIFY_NONE
  end
  request.add_field("SOAPAction", "") if api_type == :soap
  http.read_timeout = read_timeout    if read_timeout
  http.request(request)
end