Sha256: e546ca1300dedca237d226c34debea63b7b4f8adf0615d66fbbeb98fcbc56a4b

Contents?: true

Size: 827 Bytes

Versions: 2

Compression:

Stored size: 827 Bytes

Contents

require "email/provider/apple_mail"
require "email/provider/fastmail"
require "email/provider/gmail"
require "email/provider/unknown"

module Email; end

class Email::Provider
  def self.for_address(address)
    # rubocop:disable Lint/DuplicateBranch
    case
    when address.end_with?("@fastmail.com")
      Email::Provider::Fastmail.new
    when address.end_with?("@fastmail.fm")
      Email::Provider::Fastmail.new
    when address.end_with?("@gmail.com")
      Email::Provider::GMail.new
    when address.end_with?("@icloud.com")
      Email::Provider::AppleMail.new
    when address.end_with?("@mac.com")
      Email::Provider::AppleMail.new
    when address.end_with?("@me.com")
      Email::Provider::AppleMail.new
    else
      Email::Provider::Unknown.new
    end
    # rubocop:enable Lint/DuplicateBranch
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
imap-backup-6.0.1 lib/email/provider.rb
imap-backup-6.0.0 lib/email/provider.rb