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