aboutsummaryrefslogtreecommitdiffstats
path: root/actionmailbox/app/jobs/action_mailbox/routing_job.rb
blob: 4ddf6e423101582def94e9d38b344491180e5969 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
# frozen_string_literal: true

module ActionMailbox
  # Routing a new InboundEmail is an asynchronous operation, which allows the ingress controllers to quickly
  # accept new incoming emails without being burdened to hang while they're actually being processed.
  class RoutingJob < ActiveJob::Base
    queue_as { ActionMailbox.queues[:routing] }

    def perform(inbound_email)
      inbound_email.route
    end
  end
end