diff options
Diffstat (limited to 'lib/gitlab/email/receiver.rb')
-rw-r--r-- | lib/gitlab/email/receiver.rb | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/lib/gitlab/email/receiver.rb b/lib/gitlab/email/receiver.rb index da4299ebcb3..7038346192b 100644 --- a/lib/gitlab/email/receiver.rb +++ b/lib/gitlab/email/receiver.rb @@ -1,6 +1,5 @@ -require 'gitlab/email/handler/create_note' -require 'gitlab/email/handler/create_issue' +require 'gitlab/email/handler' # Inspired in great part by Discourse's Email::Receiver module Gitlab @@ -31,7 +30,7 @@ module Gitlab raise SentNotificationNotFoundError unless mail_key - if handler = find_handler(mail, mail_key) + if handler = Handler.for(mail, mail_key) handler.execute elsif mail_key =~ %r{/|\+} # Sent Notification mail_key would not have / or + @@ -65,13 +64,6 @@ module Gitlab break key if key end end - - def find_handler(mail, mail_key) - [Handler::CreateNote, Handler::CreateIssue].find do |klass| - handler = klass.new(mail, mail_key) - break handler if handler.can_handle? - end - end end end end |