class Patreon::Utils::JSONAPI::URLUtil
Public Class Methods
build_url(url, includes=nil, fields=nil)
click to toggle source
# File lib/patreon/utils/jsonapi/url_util.rb, line 8 def self.build_url(url, includes=nil, fields=nil) parsed_url = URI.parse(url) params = parsed_url.query ? Rack::Utils.parse_query(parsed_url.query) : {} params['include'] = joined_or_null(includes) if includes fields.each do |name, val| params["fields[#{name}]"] = val end if fields query = params.empty? ? "" : "?#{Rack::Utils.build_query(params)}" "#{parsed_url.path}#{query}" end
Private Class Methods
joined_or_null(list_or_string)
click to toggle source
# File lib/patreon/utils/jsonapi/url_util.rb, line 21 def self.joined_or_null(list_or_string) list_or_string && list_or_string.empty? ? "null" : Array(list_or_string).join(',') end