summaryrefslogtreecommitdiff
path: root/lib/gitlab/email/message/in_product_marketing.rb
blob: bd2c91755c83c387136b2df7cbe4e03db9a2a80f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# frozen_string_literal: true

module Gitlab
  module Email
    module Message
      module InProductMarketing
        UnknownTrackError = Class.new(StandardError)

        def self.for(track)
          valid_tracks = Namespaces::InProductMarketingEmailsService::TRACKS.keys
          raise UnknownTrackError unless valid_tracks.include?(track)

          "Gitlab::Email::Message::InProductMarketing::#{track.to_s.classify}".constantize
        end
      end
    end
  end
end