Sha256: 8b05b90725f4a852299ac9dfe4a5129164aa25f07243a65a69f8c8aca2254f75

Contents?: true

Size: 947 Bytes

Versions: 37

Compression:

Stored size: 947 Bytes

Contents

require "email/provider/apple_mail"
require "email/provider/fastmail"
require "email/provider/gmail"
require "email/provider/purelymail"
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
    when address.end_with?("@purelymail.com")
      Email::Provider::Purelymail.new
    else
      Email::Provider::Unknown.new
    end
    # rubocop:enable Lint/DuplicateBranch
  end
end

Version data entries

37 entries across 37 versions & 1 rubygems

Version Path
imap-backup-14.1.1 lib/email/provider.rb
imap-backup-14.1.0 lib/email/provider.rb
imap-backup-14.0.0 lib/email/provider.rb
imap-backup-13.4.0 lib/email/provider.rb
imap-backup-13.3.0 lib/email/provider.rb
imap-backup-13.2.0 lib/email/provider.rb
imap-backup-13.1.0 lib/email/provider.rb
imap-backup-13.0.0 lib/email/provider.rb
imap-backup-12.1.0 lib/email/provider.rb
imap-backup-12.0.0 lib/email/provider.rb
imap-backup-11.1.0 lib/email/provider.rb
imap-backup-11.1.0.rc1 lib/email/provider.rb
imap-backup-11.0.1 lib/email/provider.rb
imap-backup-11.0.0 lib/email/provider.rb
imap-backup-11.0.0.rc1 lib/email/provider.rb
imap-backup-10.0.1 lib/email/provider.rb
imap-backup-10.0.0 lib/email/provider.rb
imap-backup-9.3.2 lib/email/provider.rb
imap-backup-9.4.0.pre1 lib/email/provider.rb
imap-backup-9.3.1 lib/email/provider.rb