Class: Api::V2::Compliance::ScapContentsController
- Inherits:
-
BaseController
- Object
- BaseController
- Api::V2::Compliance::ScapContentsController
show all
- Includes:
- Foreman::Controller::Parameters::ScapContent, ForemanOpenscap::Api::V2::ScapApiControllerExtensions, ForemanOpenscap::BodyLogExtensions
- Defined in:
- app/controllers/api/v2/compliance/scap_contents_controller.rb
Class Method Summary
collapse
Instance Method Summary
collapse
#log_response_body, #logger_msg, #skip_body_log
Class Method Details
.bulk_upload_types ⇒ Object
8
9
10
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 8
def self.bulk_upload_types
['files', 'directory', 'default']
end
|
Instance Method Details
#bulk_upload ⇒ Object
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 73
def bulk_upload
case params[:type]
when 'files'
@result = ForemanOpenscap::BulkUpload.new.upload_from_files(params[:files])
when 'directory'
@result = ForemanOpenscap::BulkUpload.new.upload_from_directory(params[:directory])
when 'default'
@result = ForemanOpenscap::BulkUpload.new.upload_from_scap_guide
else
return render :json => {
:errors => [
_("Please specify import type, received: %{received}, expected one of: %{expected}") %
{ :expected => self.class.bulk_upload_types.join(', '), :received => params[:type] }
]
}, :status => :unprocessable_entity
end
end
|
#create ⇒ Object
48
49
50
51
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 48
def create
@scap_content = ForemanOpenscap::ScapContent.new(scap_content_params)
process_response @scap_content.save
end
|
#destroy ⇒ Object
64
65
66
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 64
def destroy
process_response @scap_content.destroy
end
|
#index ⇒ Object
18
19
20
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 18
def index
@scap_contents = resource_scope_for_index(:permission => :view_scap_contents)
end
|
#show ⇒ Object
33
34
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 33
def show
end
|
#update ⇒ Object
57
58
59
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 57
def update
process_response @scap_content.update(scap_content_params)
end
|
#xml ⇒ Object
25
26
27
28
29
|
# File 'app/controllers/api/v2/compliance/scap_contents_controller.rb', line 25
def xml
send_data @scap_content.scap_file,
:type => 'application/xml',
:filename => @scap_content.original_filename || "#{@scap_content.title}.xml"
end
|