class CollectionResourcesService def initialize @storage_service = if FeatureToggle.local_storage? Storage::LocalDiskService.new else Storage::S3Service.new(Configuration::EnvConfigurationService.new, ENV["COLLECTION_RESOURCES_BUCKET"]) end end def get_file(file) @storage_service.get_file(file) rescue StandardError nil end def get_file_metadata(file) @storage_service.get_file_metadata(file) rescue StandardError nil end def file_exists_on_s3?(file) @storage_service.file_exists?(file) end def upload_collection_resource(filename, file) content_type = MiniMime.lookup_by_filename(filename)&.content_type @storage_service.write_file(filename, file, content_type:) end def delete_collection_resource(filename) @storage_service.delete_file(filename) end end