module RestServiceClient

Constants

VERSION

Attributes

debug[RW]
default_headers[RW]
default_params[RW]
host[RW]
serializer[RW]

Public Class Methods

included(base) click to toggle source
# File lib/restserviceclient.rb, line 5
def self.included(base)
  base.extend(ClassMethods)
end
new(url = nil, serializer = nil, debug = nil) click to toggle source
# File lib/restserviceclient.rb, line 15
def initialize(url = nil, serializer = nil, debug = nil)
  @host = url unless url.nil?
  @host = get_host if respond_to?(:get_host) && url.nil?

  @serializer = JsonSerializer
  @serializer = serializer unless serializer.nil?
  @serializer = get_serializer if respond_to?(:get_serializer) && serializer.nil?

  @debug = false
  @debug = debug unless debug.nil?
  @debug = get_debug if respond_to?(:get_debug) && debug.nil?

  @default_headers = {}
  @default_params = {}

  @default_headers = get_default_headers if respond_to? :get_default_headers
  @default_params = get_default_params if respond_to? :get_default_params
end
version() click to toggle source
# File lib/restserviceclient/version.rb, line 4
def self.version
  VERSION
end

Private Instance Methods

make_request(http_method, endpoint, payload = {}, headers = {}) click to toggle source
# File lib/restserviceclient.rb, line 34
def make_request(http_method, endpoint, payload = {}, headers = {})
  case http_method
    when :get then  RestClient.get(endpoint, headers)
    when :post then RestClient.post(endpoint, payload, headers)
    when :put then RestClient.put(endpoint, payload, headers)
    when :patch then RestClient.patch(endpoint, payload, headers)
    when :delete then RestClient.delete(endpoint)
    else throw Exception.new("Method #{http_method} doesn't supported.")
  end
end