23 lines
407 B
Go
23 lines
407 B
Go
|
package store
|
||
|
|
||
|
import (
|
||
|
"net/mail"
|
||
|
)
|
||
|
|
||
|
type MessageInterface interface {
|
||
|
CreateMessage(Message) error
|
||
|
}
|
||
|
|
||
|
type Message struct {
|
||
|
ID string
|
||
|
Username string `storm:"index"` // FK accounts.username
|
||
|
Mailbox string `storm:"index"` // The mailbox, e.g. `INBOX` or `Foo/Bar`
|
||
|
|
||
|
Header mail.Header
|
||
|
Body []byte
|
||
|
}
|
||
|
|
||
|
func (c *concrete) CreateMessage(message Message) error {
|
||
|
return c.storm.Save(&message)
|
||
|
}
|