1package certificate
2
3import (
4	"bytes"
5	"fmt"
6	"sort"
7)
8
9// obtainError is returned when there are specific errors available per domain.
10type obtainError map[string]error
11
12func (e obtainError) Error() string {
13	buffer := bytes.NewBufferString("error: one or more domains had a problem:\n")
14
15	var domains []string
16	for domain := range e {
17		domains = append(domains, domain)
18	}
19	sort.Strings(domains)
20
21	for _, domain := range domains {
22		buffer.WriteString(fmt.Sprintf("[%s] %s\n", domain, e[domain]))
23	}
24	return buffer.String()
25}
26
27type domainError struct {
28	Domain string
29	Error  error
30}
31