4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'app/jobs/ingest_file_job.rb', line 4
def perform(file_set_id, filename, mime_type, user_key)
file_set = FileSet.find(file_set_id)
file = File.open(filename, "rb")
if mime_type
file = Hydra::Derivatives::IoDecorator.new(file)
file.mime_type = mime_type
file.original_name = File.basename(filename)
end
Hydra::Works::AddFileToFileSet.call(file_set, file, :original_file, versioning: false)
file_set.save!
user = User.find_by_user_key(user_key)
CurationConcerns::VersioningService.create(file_set.original_file, user)
CurationConcerns.config.callback.run(:after_create_content, file_set, user)
end
|