diff options
author | Sean McGivern <sean@gitlab.com> | 2018-08-23 10:04:41 +0100 |
---|---|---|
committer | Sean McGivern <sean@gitlab.com> | 2018-09-03 10:33:48 +0100 |
commit | 74616ece287a9121d6aec69f4db75bb9c4c307ce (patch) | |
tree | d2c6efa3e96bfbb947166c0a6d25eaf170046e89 /lib/gitlab/email/handler.rb | |
parent | a3382bab119f269cbd0e3bf16c0bd0e215a96fe9 (diff) | |
download | gitlab-ce-74616ece287a9121d6aec69f4db75bb9c4c307ce.tar.gz |
Extract EE-specific lines from Gitlab::Email::Handler
Diffstat (limited to 'lib/gitlab/email/handler.rb')
-rw-r--r-- | lib/gitlab/email/handler.rb | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/lib/gitlab/email/handler.rb b/lib/gitlab/email/handler.rb index e08b5be8984..bbab6f32e9b 100644 --- a/lib/gitlab/email/handler.rb +++ b/lib/gitlab/email/handler.rb @@ -6,15 +6,21 @@ require 'gitlab/email/handler/unsubscribe_handler' module Gitlab module Email module Handler - HANDLERS = [ - UnsubscribeHandler, - CreateNoteHandler, - CreateMergeRequestHandler, - CreateIssueHandler - ].freeze + def self.handlers + @handlers ||= load_handlers + end + + def self.load_handlers + [ + UnsubscribeHandler, + CreateNoteHandler, + CreateMergeRequestHandler, + CreateIssueHandler + ] + end def self.for(mail, mail_key) - HANDLERS.find do |klass| + handlers.find do |klass| handler = klass.new(mail, mail_key) break handler if handler.can_handle? end |