Class: Katello::Api::V2::PackagesController

Inherits:
ApiController
  • Object
show all
Includes:
Concerns::Api::V2::RepositoryContentController
Defined in:
app/controllers/katello/api/v2/packages_controller.rb

Instance Method Summary collapse

Methods inherited from ApiController

#full_result_response, #scoped_search

Methods included from Rendering

#respond_for_async, #respond_for_bulk_async, #respond_for_create, #respond_for_destroy, #respond_for_index, #respond_for_show, #respond_for_status, #respond_for_update, #respond_with_template, #respond_with_template_collection, #respond_with_template_resource, #try_specific_collection_template, #try_specific_resource_template

Methods included from Katello::Api::Version2

#api_version

Instance Method Details

#auto_complete_nameObject



8
9
10
11
12
13
14
# File 'app/controllers/katello/api/v2/packages_controller.rb', line 8

def auto_complete_name
  page_size = Katello::Concerns::FilteredAutoCompleteSearch::PAGE_SIZE
  rpms = Rpm.in_repositories(@repositories)
  col = "#{Rpm.table_name}.name"
  rpms = rpms.where("#{Rpm.table_name}.name ILIKE ?", "#{params[:term]}%").select(col).group(col).order(col).limit(page_size)
  render :json => rpms.pluck(col)
end

#default_sortObject



24
25
26
# File 'app/controllers/katello/api/v2/packages_controller.rb', line 24

def default_sort
  lambda { |query| query.default_sort }
end

#find_repositoriesObject



16
17
18
# File 'app/controllers/katello/api/v2/packages_controller.rb', line 16

def find_repositories
  @repositories = Repository.readable.where(:id => params[:repoids])
end

#resource_classObject



20
21
22
# File 'app/controllers/katello/api/v2/packages_controller.rb', line 20

def resource_class
  Katello::Rpm
end