2019-01-01 16:02:04 +01:00
|
|
|
package mailq
|
|
|
|
|
|
|
|
import (
|
2019-01-01 21:11:39 +01:00
|
|
|
"errors"
|
|
|
|
"fmt"
|
2019-01-01 16:02:04 +01:00
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
2019-01-01 16:40:58 +01:00
|
|
|
type MailQ struct {
|
|
|
|
NumTotal int
|
|
|
|
NumActive int
|
|
|
|
NumHold int
|
|
|
|
NumDeferred int
|
|
|
|
Entries []QEntry
|
|
|
|
}
|
|
|
|
|
2019-01-01 16:02:04 +01:00
|
|
|
type QEntry struct {
|
|
|
|
Id string
|
|
|
|
Status string
|
|
|
|
Date time.Time
|
|
|
|
Size int
|
|
|
|
Sender string
|
|
|
|
Recipients []string
|
|
|
|
Reason string
|
|
|
|
}
|
2019-01-01 21:11:39 +01:00
|
|
|
|
|
|
|
func (q MailQ) GetMessageById(id string) (QEntry, error) {
|
|
|
|
for _, entry := range q.Entries {
|
|
|
|
if entry.Id == id {
|
|
|
|
return entry, nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return QEntry{}, errors.New(fmt.Sprintf("No message with id '%s' available!", id))
|
|
|
|
}
|