...
1
2
3
4 package graph
5
6 import (
7 "bytes"
8 "fmt"
9
10 "sigs.k8s.io/cli-utils/pkg/multierror"
11 "sigs.k8s.io/cli-utils/pkg/object/mutation"
12 )
13
14
15
16 type ExternalDependencyError struct {
17 Edge Edge
18 }
19
20 func (ede ExternalDependencyError) Error() string {
21 return fmt.Sprintf("external dependency: %s -> %s",
22 mutation.ResourceReferenceFromObjMetadata(ede.Edge.From),
23 mutation.ResourceReferenceFromObjMetadata(ede.Edge.To))
24 }
25
26
27
28 type CyclicDependencyError struct {
29 Edges []Edge
30 }
31
32 func (cde CyclicDependencyError) Error() string {
33 var errorBuf bytes.Buffer
34 errorBuf.WriteString("cyclic dependency:")
35 for _, edge := range cde.Edges {
36 errorBuf.WriteString(fmt.Sprintf("\n%s%s -> %s", multierror.Prefix,
37 mutation.ResourceReferenceFromObjMetadata(edge.From),
38 mutation.ResourceReferenceFromObjMetadata(edge.To)))
39 }
40 return errorBuf.String()
41 }
42
43
44
45 type DuplicateDependencyError struct {
46 Edge Edge
47 }
48
49 func (dde DuplicateDependencyError) Error() string {
50 return fmt.Sprintf("duplicate dependency: %s -> %s",
51 mutation.ResourceReferenceFromObjMetadata(dde.Edge.From),
52 mutation.ResourceReferenceFromObjMetadata(dde.Edge.To))
53 }
54
View as plain text