maildir

package
v0.0.0-...-8277694 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2022 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

package implementing maildir protocol

Index

Constants

View Source
const Draft = Flag('D')
View Source
const Flagged = Flag('F')
View Source
const Passed = Flag('P')
View Source
const Replied = Flag('R')
View Source
const Seen = Flag('S')
View Source
const Trashed = Flag('T')

Variables

This section is empty.

Functions

func MailQueue

func MailQueue(d MailDir) mailstore.SendQueue

Types

type Flag

type Flag rune

maildir flag

func (Flag) Rune

func (f Flag) Rune() rune

func (Flag) String

func (f Flag) String() string

type Getter

type Getter interface {
	// get a user's maildir
	GetMailDir(user string) (MailDir, error)
}

defines a way to get a maildir given a username

func AbsoluteGetter

func AbsoluteGetter(path string) Getter

a maildir getter that always uses 1 directory

type MailDir

type MailDir string

maildir mailbox protocol

func (MailDir) Cur

func (d MailDir) Cur(fname string) (f string)

func (MailDir) Deliver

func (d MailDir) Deliver(body io.Reader) (msg mailstore.Message, err error)

deliver mail to this maildir return messsage that was delivered

func (MailDir) Ensure

func (d MailDir) Ensure() (err error)

ensure the maildir is well formed

func (MailDir) File

func (d MailDir) File() (fname string)

get a string of the current filename to use

func (MailDir) Filepath

func (d MailDir) Filepath() (str string)

get absolute filepath for this maildir

func (MailDir) IsCur

func (d MailDir) IsCur(msg Message) (is bool, err error)

return true if this message is in cur directory

func (MailDir) IsNew

func (d MailDir) IsNew(msg Message) (is bool, err error)

return true if this message is in cur directory

func (MailDir) List

func (d MailDir) List() (msgs []mailstore.Message, err error)

func (MailDir) ListCur

func (d MailDir) ListCur() (msgs []Message, err error)

list currently held messages in this maildir

func (MailDir) ListNew

func (d MailDir) ListNew() (msgs []mailstore.Message, err error)

list new messages in this maildir

func (MailDir) New

func (d MailDir) New(fname string) (f string)

func (MailDir) NewFile

func (d MailDir) NewFile() (fname string)

func (MailDir) OpenMessage

func (d MailDir) OpenMessage(msg Message) (f *os.File, err error)

open message in cur directory

func (MailDir) Process

func (d MailDir) Process(msg mailstore.Message) (m mailstore.Message, err error)

func (MailDir) ProcessCur

func (d MailDir) ProcessCur(msg Message, flags ...Flag) (err error)

process message in cur and change its flags if specified

func (MailDir) ProcessNew

func (d MailDir) ProcessNew(msg Message, flags ...Flag) (m Message, err error)

process new message and move it to the cur directory

func (MailDir) Temp

func (d MailDir) Temp(fname string) (f string)

func (MailDir) TempFile

func (d MailDir) TempFile() (fname string)

type Message

type Message string

func (Message) Filename

func (m Message) Filename() (f string)

func (Message) Filepath

func (m Message) Filepath() string

func (Message) GetFlags

func (m Message) GetFlags() (flags []Flag)

get flags on this message

func (Message) Name

func (m Message) Name() string

func (Message) Remove

func (m Message) Remove() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL