]> git.openstreetmap.org Git - rails.git/blobdiff - app/jobs/trace_importer_job.rb
Merge remote-tracking branch 'upstream/pull/5357'
[rails.git] / app / jobs / trace_importer_job.rb
index d41de5836969bbd5cd8592de3bb57f4150521b45..48285cbc1ebd60273f108cdf526f8eba5e7a6b8c 100644 (file)
@@ -1,19 +1,23 @@
 class TraceImporterJob < ApplicationJob
-  queue_as :default
+  queue_as :traces
 
   def perform(trace)
     gpx = trace.import
 
     if gpx.actual_points.positive?
-      Notifier.gpx_success(trace, gpx.actual_points).deliver_later
+      UserMailer.gpx_success(trace, gpx.actual_points).deliver
     else
-      Notifier.gpx_failure(trace, "0 points parsed ok. Do they all have lat,lng,alt,timestamp?").deliver_later
+      UserMailer.gpx_failure(trace, "0 points parsed ok. Do they all have lat,lng,alt,timestamp?").deliver
       trace.destroy
     end
-  rescue StandardError => ex
-    logger.info ex.to_s
-    ex.backtrace.each { |l| logger.info l }
-    Notifier.gpx_failure(trace, ex.to_s + "\n" + ex.backtrace.join("\n")).deliver_later
+  rescue XML::Error => e
+    logger.info e.to_s
+    UserMailer.gpx_failure(trace, e).deliver
+    trace.destroy
+  rescue StandardError => e
+    logger.info e.to_s
+    e.backtrace.each { |l| logger.info l }
+    UserMailer.gpx_failure(trace, "#{e}\n#{e.backtrace.join("\n")}").deliver
     trace.destroy
   end
 end