Sha256: 2edadf397e836c2bb9eccbfa3e1847aed94b09b8d8ed092534cd17042b5c2eb6

Contents?: true

Size: 681 Bytes

Versions: 2

Compression:

Stored size: 681 Bytes

Contents

module Imap::Backup
  class Downloader
    attr_reader :folder
    attr_reader :serializer

    def initialize(folder, serializer)
      @folder, @serializer = folder, serializer
    end

    def run
      uids = folder.uids - serializer.uids
      Imap::Backup.logger.debug "[#{folder.name}] #{uids.count} new messages"
      uids.each do |uid|
        message = folder.fetch(uid)
        if message.nil?
          Imap::Backup.logger.debug "[#{folder.name}] #{uid} - not available - skipped"
          next
        end
        Imap::Backup.logger.debug "[#{folder.name}] #{uid} - #{message["RFC822"].size} bytes"
        serializer.save(uid, message)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
imap-backup-1.3.0 lib/imap/backup/downloader.rb
imap-backup-1.2.3 lib/imap/backup/downloader.rb