class URI::QueryParams

Public Class Methods

build_uri(options = {}) click to toggle source
# File lib/query_params.rb, line 36
def self.build_uri(options = {})
  queryParams = QueryParams.new(options[:base_uri])
  queryParams.set_conditions(options[:filters]) if options[:filters]
  queryParams.full_text_search(options[:q]) if options[:q]
  queryParams.filter_param_name(options[:filter_param_name]) if options[:filter_param_name]
  queryParams.build_uri()
end
filters(filters) click to toggle source
# File lib/query_params.rb, line 44
def self.filters(filters)
  return "" if filters.nil? || filters.empty?

  queryParams = QueryParams.new()
  queryParams.set_conditions(filters)
  queryParams.build_filters()
end
new(base_uri = "") click to toggle source
# File lib/query_params.rb, line 11
def initialize(base_uri = "")
  @base_uri = base_uri.nil? ? "" : base_uri
  @params = []
  @query = ""
  @filter_param_name = "filters"
end

Public Instance Methods

build_filters() click to toggle source
# File lib/query_params.rb, line 52
def build_filters()
  @params.join("|")
end
build_uri() click to toggle source
# File lib/query_params.rb, line 22
def build_uri()
  uri = ""
  unless @base_uri.empty?
    uri += uri.include?('?') ? "&" : "?"
  end
  unless @query.empty?
    uri += "#{@query}" 
    uri += "&" unless @params.empty?
  end
  uri += "#{@filter_param_name}=#{build_filters()}" unless @params.empty?
  uri = "" if uri.length == 1
  "#{@base_uri}#{uri}"
end
set_filter_param_name(name = @filter_param_name) click to toggle source
# File lib/query_params.rb, line 18
def set_filter_param_name(name = @filter_param_name)
  @filter_param_name = name
end