app/models/bulkrax/entry.rb in bulkrax-3.2.0 vs app/models/bulkrax/entry.rb in bulkrax-3.3.0
- old
+ new
@@ -2,10 +2,12 @@
module Bulkrax
# Custom error class for collections_created?
class CollectionsCreatedError < RuntimeError; end
class OAIError < RuntimeError; end
+ # TODO: remove when ApplicationParser#bagit_zip_file_size_check is removed
+ class BagitZipError < RuntimeError; end
class Entry < ApplicationRecord
include Bulkrax::HasMatchers
include Bulkrax::ImportBehavior
include Bulkrax::ExportBehavior
include Bulkrax::StatusInfo
@@ -32,10 +34,11 @@
to: :importerexporter
delegate :client,
:collection_name,
:user,
+ :generated_metadata_mapping,
:related_parents_raw_mapping,
:related_parents_parsed_mapping,
:related_children_raw_mapping,
:related_children_parsed_mapping,
to: :parser
@@ -66,9 +69,18 @@
parser&.source_identifier&.to_s || 'source_identifier'
end
def work_identifier
parser&.work_identifier&.to_s || 'source'
+ end
+
+ # Returns field_mapping hash based on whether or not generated metadata should be included
+ def fetch_field_mapping
+ return self.mapping if importerexporter.generated_metadata
+
+ self.mapping.each do |key, value|
+ self.mapping.delete(key) if value[generated_metadata_mapping]
+ end
end
def self.parent_field(parser)
parser.related_parents_parsed_mapping
end