Use header-only IMAP lists
This commit is contained in:
parent
a52963c380
commit
a17d2c8a2c
5 changed files with 456 additions and 184 deletions
|
|
@ -12,11 +12,12 @@ import (
|
|||
// Original-Datum; SMTP wuerde alles als "neu/ungelesen" mit falschem Datum
|
||||
// zustellen und die Ordnerstruktur zerstoeren.
|
||||
type TargetMailbox interface {
|
||||
Folders() ([]TargetFolder, error) // vorhandene Ziel-Ordner (fuer Rollen-Zuordnung)
|
||||
Delim() string // Hierarchie-Trenner des Ziels
|
||||
EnsureFolder(name string) error // anlegen + subscriben, falls fehlt
|
||||
Append(folder string, m RawMessage) error // mit m.Flags und m.InternalDate
|
||||
Fetch(folder string) ([]RawMessage, error) // Ziel-Audit: geschriebene Mail wiederfinden
|
||||
Folders() ([]TargetFolder, error) // vorhandene Ziel-Ordner (fuer Rollen-Zuordnung)
|
||||
Delim() string // Hierarchie-Trenner des Ziels
|
||||
EnsureFolder(name string) error // anlegen + subscriben, falls fehlt
|
||||
Append(folder string, m RawMessage) error // mit m.Flags und m.InternalDate
|
||||
Headers(folder string, limit, offset int) ([]MessageHeader, error)
|
||||
FetchOne(folder string, uid uint32) (RawMessage, error)
|
||||
Close() error
|
||||
}
|
||||
|
||||
|
|
@ -120,8 +121,12 @@ func (t *imapTarget) Append(folder string, m RawMessage) error {
|
|||
return err
|
||||
}
|
||||
|
||||
func (t *imapTarget) Fetch(folder string) ([]RawMessage, error) {
|
||||
return t.mailbox.fetchAll(folder)
|
||||
func (t *imapTarget) Headers(folder string, limit, offset int) ([]MessageHeader, error) {
|
||||
return t.mailbox.fetchHeaders(folder, limit, offset)
|
||||
}
|
||||
|
||||
func (t *imapTarget) FetchOne(folder string, uid uint32) (RawMessage, error) {
|
||||
return t.mailbox.fetchOne(folder, uid)
|
||||
}
|
||||
|
||||
func (t *imapTarget) Close() error {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue