Class: CurationConcern::GenericFileActor
- Inherits:
-
Sufia::GenericFile::Actor
- Object
- Sufia::GenericFile::Actor
- CurationConcern::GenericFileActor
- Includes:
- Worthwhile::ManagesEmbargoesActor
- Defined in:
- app/actors/curation_concern/generic_file_actor.rb
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
-
#curation_concern ⇒ Object
readonly
Returns the value of attribute curation_concern.
Instance Method Summary collapse
- #create_metadata(batch_id) ⇒ Object
-
#initialize(generic_file, user, attributes) ⇒ GenericFileActor
constructor
A new instance of GenericFileActor.
- #load_parent(batch_id) ⇒ Object
-
#update_metadata(_, _) ⇒ Object
we can trim this down a bit when Sufia 7.1 is released (adds update_visibility).
Methods included from Worthwhile::ManagesEmbargoesActor
#copy_visibility, #interpret_embargo_visibility, #interpret_lease_visibility, #interpret_visibility
Constructor Details
#initialize(generic_file, user, attributes) ⇒ GenericFileActor
Returns a new instance of GenericFileActor.
7 8 9 10 11 12 13 |
# File 'app/actors/curation_concern/generic_file_actor.rb', line 7 def initialize(generic_file, user, attributes) super(generic_file, user) # we're setting attributes and curation_concern to bridge the difference # between Sufia::GenericFile::Actor and ManagesEmbargoesActor @curation_concern = generic_file @attributes = attributes end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
5 6 7 |
# File 'app/actors/curation_concern/generic_file_actor.rb', line 5 def attributes @attributes end |
#curation_concern ⇒ Object (readonly)
Returns the value of attribute curation_concern.
5 6 7 |
# File 'app/actors/curation_concern/generic_file_actor.rb', line 5 def curation_concern @curation_concern end |
Instance Method Details
#create_metadata(batch_id) ⇒ Object
29 30 31 32 33 34 |
# File 'app/actors/curation_concern/generic_file_actor.rb', line 29 def (batch_id) if batch_id generic_file.visibility = load_parent(batch_id).visibility end super end |
#load_parent(batch_id) ⇒ Object
36 37 38 |
# File 'app/actors/curation_concern/generic_file_actor.rb', line 36 def load_parent(batch_id) @parent ||= GenericWork.find(batch_id) end |
#update_metadata(_, _) ⇒ Object
we can trim this down a bit when Sufia 7.1 is released (adds update_visibility)
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'app/actors/curation_concern/generic_file_actor.rb', line 16 def (_, _) interpret_visibility generic_file.visibility = attributes[:visibility] if attributes.key?(:visibility) generic_file.attributes = generic_file.sanitize_attributes(attributes) generic_file.date_modified = DateTime.now remove_from_feature_works if generic_file.visibility_changed? && !generic_file.public? save_and_record_committer do if Sufia.config.respond_to?(:after_update_metadata) Sufia.config..call(generic_file, user) end end end |