From 11f0a7267fd1a9d1c6dd55e1dc044b8ed639bbc0 Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Thu, 14 Mar 2019 21:51:29 -0400 Subject: Implement message store side of message fetching --- worker/imap/open.go | 9 ++------- worker/types/messages.go | 4 ++-- 2 files changed, 4 insertions(+), 9 deletions(-) (limited to 'worker') diff --git a/worker/imap/open.go b/worker/imap/open.go index 0f25c5e..87c4fb3 100644 --- a/worker/imap/open.go +++ b/worker/imap/open.go @@ -29,7 +29,7 @@ func (imapw *IMAPWorker) handleFetchDirectoryContents( go func() { seqSet := &imap.SeqSet{} seqSet.AddRange(1, imapw.selected.Messages) - uid32, err := imapw.client.UidSearch(&imap.SearchCriteria{ + uids, err := imapw.client.UidSearch(&imap.SearchCriteria{ SeqNum: seqSet, }) if err != nil { @@ -38,12 +38,7 @@ func (imapw *IMAPWorker) handleFetchDirectoryContents( Error: err, }, nil) } else { - imapw.worker.Logger.Printf("Found %d UIDs", len(uid32)) - var uids []uint64 - for _, uid := range uid32 { - uids = append(uids, - (uint64(imapw.selected.UidValidity)<<32)|uint64(uid)) - } + imapw.worker.Logger.Printf("Found %d UIDs", len(uids)) imapw.worker.PostMessage(&types.DirectoryContents{ Message: types.RespondTo(msg), Uids: uids, diff --git a/worker/types/messages.go b/worker/types/messages.go index d44624d..3f1a39f 100644 --- a/worker/types/messages.go +++ b/worker/types/messages.go @@ -110,7 +110,7 @@ type DirectoryInfo struct { type DirectoryContents struct { Message - Uids []uint64 + Uids []uint32 } type MessageInfo struct { @@ -120,5 +120,5 @@ type MessageInfo struct { InternalDate time.Time Mail *mail.Message Size uint32 - Uid uint64 + Uid uint32 } -- cgit v1.2.3