class GiantBombApi::Request::Collection

Public Class Methods

new(resource, filter: {}, sort: {}, limit: 100, offset: 0) click to toggle source
Calls superclass method GiantBombApi::Request::new
# File lib/giant_bomb_api/request/collection.rb, line 4
def initialize(resource, filter: {}, sort: {}, limit: 100, offset: 0)
  @resource = resource
  @filter = filter
  @sort = sort
  
  params = {}
  params[:filter] = filter_params if filter_params.present?
  params[:sort] = sort_params if sort_params.present?
  params[:limit] = limit if limit.present?
  params[:offset] = offset if offset.present?

  super end_point, params
end

Public Instance Methods

end_point() click to toggle source
# File lib/giant_bomb_api/request/collection.rb, line 26
def end_point
  @resource.collection_resource_name
end
filter_params() click to toggle source
# File lib/giant_bomb_api/request/collection.rb, line 18
def filter_params
  params_join @filter
end
sort_params() click to toggle source
# File lib/giant_bomb_api/request/collection.rb, line 22
def sort_params
  params_join @sort
end

Private Instance Methods

params_join(params) click to toggle source
# File lib/giant_bomb_api/request/collection.rb, line 32
def params_join(params)
  params.map { |key,value| "#{key}:#{value}" }.join(",")
end