Sha256: 21640635da02c9e0920b05d53a3391294ff7fd2818adbe91c540f8b633618168

Contents?: true

Size: 787 Bytes

Versions: 5

Compression:

Stored size: 787 Bytes

Contents

require "imap/backup"
require "imap/backup/cli/accounts"

module Imap::Backup::CLI::Helpers
  def symbolized(options)
    options.each.with_object({}) { |(k, v), acc| acc[k.intern] = v }
  end

  def account(email)
    accounts = Imap::Backup::CLI::Accounts.new
    account = accounts.find { |a| a.username == email }
    raise "#{email} is not a configured account" if !account

    account
  end

  def connection(email)
    account = account(email)

    Imap::Backup::Account::Connection.new(account)
  end

  def each_connection(names)
    accounts = Imap::Backup::CLI::Accounts.new(names)

    accounts.each do |account|
      yield account.connection
    end
  rescue Imap::Backup::ConfigurationNotFound
    raise "imap-backup is not configured. Run `imap-backup setup`"
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
imap-backup-4.2.2 lib/imap/backup/cli/helpers.rb
imap-backup-4.2.1 lib/imap/backup/cli/helpers.rb
imap-backup-4.2.0 lib/imap/backup/cli/helpers.rb
imap-backup-4.1.2 lib/imap/backup/cli/helpers.rb
imap-backup-4.1.1 lib/imap/backup/cli/helpers.rb