Implement the POP3 UIDL command.
[mailpopbox.git] / pop3 / server.go
1 package pop3
2
3 import (
4 "io"
5 )
6
7 type Message interface {
8 UniqueID() string
9 ID() int
10 Size() int
11 Deleted() bool
12 }
13
14 type Mailbox interface {
15 ListMessages() ([]Message, error)
16 GetMessage(int) Message
17 Retrieve(Message) (io.ReadCloser, error)
18 Delete(Message) error
19 Close() error
20 Reset()
21 }
22
23 type PostOffice interface {
24 Name() string
25 OpenMailbox(user, pass string) (Mailbox, error)
26 }