app/models/bulkrax/entry.rb in bulkrax-1.0.2 vs app/models/bulkrax/entry.rb in bulkrax-2.0.0

- old
+ new

@@ -21,16 +21,26 @@ paginates_per 5 attr_accessor :all_attrs - delegate :parser, :mapping, :replace_files, :update_files, to: :importerexporter + delegate :parser, + :mapping, + :replace_files, + :update_files, + :keys_without_numbers, + :key_without_numbers, + to: :importerexporter delegate :client, - :collection_name, - :user, - to: :parser + :collection_name, + :user, + :related_parents_raw_mapping, + :related_parents_parsed_mapping, + :related_children_raw_mapping, + :related_children_parsed_mapping, + to: :parser # Retrieve fields from the file # @param data - the source data # @return Array def self.fields_from_data(_data) @@ -59,17 +69,17 @@ def work_identifier parser&.work_identifier&.to_s || 'source' end def self.collection_field + ActiveSupport::Deprecation.warn( + 'Creating Collections using the collection_field_mapping will no longer be supported as of Bulkrax version 3.0.' \ + ' Please configure Bulkrax to use related_parents_field_mapping and related_children_field_mapping instead.' + ) Bulkrax.collection_field_mapping[self.to_s] end - def self.children_field - Bulkrax.parent_child_field_mapping[self.to_s] - end - def build return if type.nil? self.save if self.new_record? # must be saved for statuses return build_for_importer if importer? @@ -94,9 +104,10 @@ def last_run self.importerexporter&.last_run end def find_collection(collection_identifier) + return unless Collection.properties.keys.include?(work_identifier) Collection.where( work_identifier => collection_identifier ).detect { |m| m.send(work_identifier).include?(collection_identifier) } end end