Sha256: e1f5d449fc24f8428a3fdaa2d959a3ae91a907ca3d7c562eb17ca48435273620

Contents?: true

Size: 1.69 KB

Versions: 12

Compression:

Stored size: 1.69 KB

Contents

module Katello
  class Api::V2::ContentUploadsController < Api::V2::ApiController
    before_action :find_repository
    skip_before_action :check_content_type, :only => [:update]

    include ::Foreman::Controller::FilterParameters
    filter_parameters :content

    api :POST, "/repositories/:repository_id/content_uploads", N_("Create an upload request")
    param :repository_id, :number, :required => true, :desc => N_("repository id")
    def create
      render :json => @repository.backend_content_service(::SmartProxy.pulp_master).create_upload
    end

    api :PUT, "/repositories/:repository_id/content_uploads/:id", N_("Upload a chunk of the file's content")
    param :repository_id, :number, :required => true, :desc => N_("Repository id")
    param :id, :number, :required => true, :desc => N_("Upload request id")
    param :offset, :number, :required => true, :desc => N_("The offset in the file where the content starts")
    param :content, File, :required => true, :desc => N_("The actual file contents")
    def update
      @repository.backend_content_service(::SmartProxy.pulp_master)
        .upload_chunk(params[:id], params[:offset], params[:content])
      head :no_content
    end

    api :DELETE, "/repositories/:repository_id/content_uploads/:id", N_("Delete an upload request")
    param :repository_id, :number, :required => true, :desc => N_("Repository id")
    param :id, :number, :required => true, :desc => N_("Upload request id")
    def destroy
      @repository.backend_content_service(::SmartProxy.pulp_master).delete_upload(params[:id])
      head :no_content
    end

    private

    def find_repository
      @repository = Repository.find(params[:repository_id])
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
katello-3.12.3 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.12.2 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.13.0.rc1 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.12.1 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.11.2 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.12.0 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.12.0.rc2 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.12.0.rc1 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.11.1 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.11.0 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.11.0.rc2 app/controllers/katello/api/v2/content_uploads_controller.rb
katello-3.11.0.rc1 app/controllers/katello/api/v2/content_uploads_controller.rb