Sha256: 869e8f8e3a2d79ffbc3ed8f25d75f73a60688f757d8b163d7c37051c6fca12c5
Contents?: true
Size: 1.14 KB
Versions: 14
Compression:
Stored size: 1.14 KB
Contents
require "imap/backup/account/backup_folders" require "imap/backup/account/folder_backup" require "imap/backup/account/folder_ensurer" require "imap/backup/account/local_only_folder_deleter" module Imap; end module Imap::Backup class Account; end class Account::Backup attr_reader :account attr_reader :refresh def initialize(account:, refresh: false) @account = account @refresh = refresh end def run Logger.logger.info "Running backup of account: #{account.username}" # start the connection so we get logging messages in the right order account.client.login Account::FolderEnsurer.new(account: account).run Account::LocalOnlyFolderDeleter.new(account: account).run if account.mirror_mode backup_folders = Account::BackupFolders.new( client: account.client, account: account ) if backup_folders.none? Logger.logger.warn "Account #{account.username}: No folders found to backup" return end backup_folders.each do |folder| Account::FolderBackup.new(account: account, folder: folder, refresh: refresh).run end end end end
Version data entries
14 entries across 14 versions & 1 rubygems