class GiantClient::AbstractAdapter
Public Instance Methods
delete(opts)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 62 def delete(opts) request(:delete, opts) end
encode_query(query)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 18 def encode_query(query) query = stringify_query(query) query = prepend_question_mark(query) unless query == '' query end
get(opts)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 50 def get(opts) request(:get, opts) end
head(opts)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 66 def head(opts) request(:head, opts) end
normalize_header(header)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 46 def normalize_header(header) header.split('-').map{|h| h.capitalize}.join('-') end
normalize_header_hash(headers)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 37 def normalize_header_hash(headers) normalized_headers = {} headers.each do |header, value| normalized = normalize_header(header) normalized_headers[normalized] = value end normalized_headers end
post(opts)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 54 def post(opts) request(:post, opts) end
prepend_question_mark(str)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 33 def prepend_question_mark(str) "?#{str}" end
put(opts)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 58 def put(opts) request(:put, opts) end
stringify_query(query)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 24 def stringify_query(query) if Hash === query query = URI.encode_www_form(query) elsif query.nil? query = '' end query end
url_from_opts(opts)
click to toggle source
# File lib/giant_client/abstract_adapter.rb, line 4 def url_from_opts(opts) query = encode_query(opts[:query]) if opts[:ssl] scheme = 'https://' port = opts[:port] == 443 ? '' : ":#{opts[:port]}" else scheme = 'http://' port = opts[:port] == 80 ? '' : ":#{opts[:port]}" end "#{scheme}#{opts[:host]}#{port}#{opts[:path]}#{query}" end