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