-
Notifications
You must be signed in to change notification settings - Fork 53
/
errors.go
101 lines (81 loc) · 2.92 KB
/
errors.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/********************************************************************************
* Copyright 2020 Dell Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*******************************************************************************/
package pkg
import "fmt"
// CertificateErr represents an error associated with interacting with a Certificate.
type CertificateErr struct {
description string
}
func (ce CertificateErr) Error() string {
return fmt.Sprintf("Unable to process certificate properties: %s", ce.description)
}
// NewCertificateErr constructs a new CertificateErr
func NewCertificateErr(message string) CertificateErr {
return CertificateErr{description: message}
}
// BrokerURLErr represents an error associated parsing a broker's URL.
type BrokerURLErr struct {
description string
}
func (bue BrokerURLErr) Error() string {
return fmt.Sprintf("Unable to process broker URL: %s", bue.description)
}
// NewBrokerURLErr constructs a new BrokerURLErr
func NewBrokerURLErr(description string) BrokerURLErr {
return BrokerURLErr{description: description}
}
type PublishHostURLErr struct {
description string
}
func (p PublishHostURLErr) Error() string {
return fmt.Sprintf("Unable to use PublishHost URL: %s", p.description)
}
func NewPublishHostURLErr(message string) PublishHostURLErr {
return PublishHostURLErr{description: message}
}
type SubscribeHostURLErr struct {
description string
}
func (p SubscribeHostURLErr) Error() string {
return fmt.Sprintf("Unable to use SubscribeHost URL: %s", p.description)
}
func NewSubscribeHostURLErr(message string) SubscribeHostURLErr {
return SubscribeHostURLErr{description: message}
}
type MissingConfigurationErr struct {
missingConfiguration string
description string
}
func (mce MissingConfigurationErr) Error() string {
return fmt.Sprintf("Missing configuration '%s' : %s", mce.missingConfiguration, mce.description)
}
func NewMissingConfigurationErr(missingConfiguration string, message string) MissingConfigurationErr {
return MissingConfigurationErr{
missingConfiguration: missingConfiguration,
description: message,
}
}
type InvalidTopicErr struct {
topic string
description string
}
func (ite InvalidTopicErr) Error() string {
return fmt.Sprintf("Invalid topic '%s': %s", ite.topic, ite.description)
}
func NewInvalidTopicErr(topic string, description string) InvalidTopicErr {
return InvalidTopicErr{
topic: topic,
description: description,
}
}