Class: GenericContentObjectsController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- GenericContentObjectsController
- Includes:
- Blacklight::SolrHelper, Hydra::AssetsControllerHelper, Hydra::FileAssetsHelper, Hydra::RepositoryController, MediaShelf::ActiveFedoraHelper
- Defined in:
- vendor/plugins/hydra_repository/app/controllers/generic_content_objects_controller.rb
Constant Summary
Constants included from Blacklight::SolrHelper
Instance Method Summary (collapse)
Methods included from Blacklight::SolrHelper
#facet_limit_for, #facet_limit_hash, #get_facet_pagination, #get_opensearch_response, #get_search_results, #get_single_doc_via_search, #get_solr_response_for_doc_id, #get_solr_response_for_field_values, included, #max_per_page, #solr_doc_params, #solr_facet_params, #solr_opensearch_params, #solr_param_quote, #solr_search_params
Methods included from MediaShelf::ActiveFedoraHelper
#load_af_instance_from_solr, #retrieve_af_model
Methods included from Hydra::RepositoryController
#downloadables, included, #solr_name
Methods included from Hydra::FileAssetsHelper
#add_posted_blob_to_asset, #asset_class_from_params, #choose_model_by_filename, #choose_model_by_filename_extension, #create_and_save_file_asset_from_params, #create_asset_from_params
Methods included from Hydra::AssetsControllerHelper
#apply_depositor_metadata, #prep_updater_method_args, #set_collection_type
Methods inherited from ApplicationController
#current_user, #default_html_head, #error, #extra_head_content, #javascript_includes, #stylesheet_links, #user_class
Methods included from HydraAccessControlsHelper
#editor?, #reader?, #test_permission
Instance Method Details
- (Object) create
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'vendor/plugins/hydra_repository/app/controllers/generic_content_objects_controller.rb', line 13 def create unless params.has_key?(:Filedata) raise "No file to process" end if !params[:container_id].nil? && params[:Filedata] af_base = ActiveFedora::Base.find(params[:container_id]) af_model = retrieve_af_model( af_base.relationships[:self][:has_model].first.split(":")[-1] ) logger.debug "#########: af_model = #{af_model.to_s}" generic_content_object = af_model.load_instance(params[:container_id]) generic_content_object.content={:file => params[:Filedata], :file_name => params[:Filename]} logger.debug "#########: set the content" generic_content_object.save logger.debug "#########: saved #{generic_content_object.pid} with new content #{params[:Filename]}" if af_model == GenericImage logger.debug "#########: deriving images" generic_content_object.derive_all logger.debug "#########: finished deriving images" end end render :nothing => true end |