Class: CmisServer::AtomPub::BulkController
- Inherits:
-
BaseController
- Object
- ActionController::Base
- CmisServer::ApplicationController
- BaseController
- CmisServer::AtomPub::BulkController
- Includes:
- RepositoryScopable
- Defined in:
- app/controllers/cmis_server/atom_pub/bulk_controller.rb
Instance Method Summary collapse
-
#delete_properties ⇒ Object
POST /bulk/delete - bulkDeleteProperties (nouvelle fonctionnalité CMIS 1.1).
-
#move_objects ⇒ Object
POST /bulk/move - bulkMoveObjects (extension utile).
-
#update_properties ⇒ Object
POST /bulk - bulkUpdateProperties.
Methods included from RepositoryScopable
Methods inherited from BaseController
#raw_post_body, #render_standard_error, #request_entry_parser
Methods inherited from CmisServer::ApplicationController
Instance Method Details
#delete_properties ⇒ Object
POST /bulk/delete - bulkDeleteProperties (nouvelle fonctionnalité CMIS 1.1)
30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'app/controllers/cmis_server/atom_pub/bulk_controller.rb', line 30 def delete_properties bulk_data = parse_bulk_delete_from_request validate_bulk_delete_data(bulk_data) results = delete_properties_from_objects(bulk_data) respond_to do |format| format.atom_feed { render "cmis_server/atom_pub/bulk_delete_feed", locals: { results: results } } format.json { render json: format_bulk_results_for_json(results) } end rescue => e render_error(e) end |
#move_objects ⇒ Object
POST /bulk/move - bulkMoveObjects (extension utile)
45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'app/controllers/cmis_server/atom_pub/bulk_controller.rb', line 45 def move_objects bulk_data = parse_bulk_move_from_request validate_bulk_move_data(bulk_data) results = move_objects_bulk(bulk_data) respond_to do |format| format.atom_feed { render "cmis_server/atom_pub/bulk_move_feed", locals: { results: results } } format.json { render json: format_bulk_results_for_json(results) } end rescue => e render_error(e) end |
#update_properties ⇒ Object
POST /bulk - bulkUpdateProperties
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'app/controllers/cmis_server/atom_pub/bulk_controller.rb', line 11 def update_properties bulk_data = parse_bulk_data_from_request validate_bulk_data(bulk_data) # Utiliser le service dédié pour la mise à jour en masse bulk_service = CmisServer::BulkUpdateService.new(context: context) results = bulk_service.bulk_update(bulk_data[:object_ids], bulk_data[:properties]) respond_to do |format| format.atom_feed { render "cmis_server/atom_pub/bulk_update_feed", locals: { results: results } } format.json { render json: format_bulk_results_for_json(results) } end rescue CmisServer::BulkUpdateService::CapabilityError => e render_error(CmisServer::NotSupported.new(e.)) rescue => e render_error(e) end |