Sha256: df1ca511dc120774a09d6070de04cec30c09b95e6eb9448855c2e5e34d7b8c93
Contents?: true
Size: 912 Bytes
Versions: 9
Compression:
Stored size: 912 Bytes
Contents
require "imap/backup/account/backup_folders" require "imap/backup/account/serialized_folders" module Imap; end module Imap::Backup class Account; end # Deletes serialized folders that are not configured to be backed up. # This is used in mirror mode, where local copies are only kept as long as they # exist on the server. class Account::LocalOnlyFolderDeleter def initialize(account:) @account = account end # Runs the deletion operation # @return [void] def run backup_folders = Account::BackupFolders.new( client: account.client, account: account ) wanted = backup_folders.map(&:name) serialized_folders = Account::SerializedFolders.new(account: account) serialized_folders.each_key do |serializer| serializer.delete if !wanted.include?(serializer.folder) end end private attr_reader :account end end
Version data entries
9 entries across 9 versions & 1 rubygems