From 8fe5bcde569e9e5f45e397005a915142d20d319d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mica=C3=ABl=20Bergeron?= Date: Fri, 30 Mar 2018 08:52:37 -0400 Subject: [PATCH] apply feedback --- .../object_storage/migrate_uploads_worker.rb | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/app/workers/object_storage/migrate_uploads_worker.rb b/app/workers/object_storage/migrate_uploads_worker.rb index 826618aebdb..a6b2c251254 100644 --- a/app/workers/object_storage/migrate_uploads_worker.rb +++ b/app/workers/object_storage/migrate_uploads_worker.rb @@ -159,7 +159,11 @@ module ObjectStorage raise(SanityCheckError, "Mount point #{mounted_as} not found in #{model_class}.") unless model_has_mount end - def perform(ids, model_type, mounted_as, to_store) + def perform(*args) + args_check!(args) + + (ids, model_type, mounted_as, to_store) = args + @model_class = model_type.constantize @mounted_as = mounted_as&.to_sym @to_store = to_store @@ -179,6 +183,16 @@ module ObjectStorage self.class.sanity_check!(uploads, @model_class, @mounted_as) end + def args_check!(args) + return if args.count == 4 + + case args.count + when 3 then raise SanityCheckError, "Job is missing the `model_type` argument." + else + raise SanityCheckError, "Job has wrong arguments format." + end + end + def build_uploaders(uploads) uploads.map { |upload| upload.build_uploader(@mounted_as) } end -- GitLab