@@ -55,18 +55,14 @@ func newAlreadyOwnedError(Object metav1.Object, Owner metav1.OwnerReference) *Al
55
55
// reconciling the owner object on changes to controlled (with a Watch + EnqueueRequestForOwner).
56
56
// Since only one OwnerReference can be a controller, it returns an error if
57
57
// there is another OwnerReference with Controller flag set.
58
- func SetControllerReference (owner , controlled metav1. Object , scheme * runtime.Scheme ) error {
58
+ func SetControllerReference (owner , controlled Object , scheme * runtime.Scheme ) error {
59
59
// Validate the owner.
60
- ro , ok := owner .(runtime.Object )
61
- if ! ok {
62
- return fmt .Errorf ("%T is not a runtime.Object, cannot call SetControllerReference" , owner )
63
- }
64
60
if err := validateOwner (owner , controlled ); err != nil {
65
61
return err
66
62
}
67
63
68
64
// Create a new controller ref.
69
- gvk , err := apiutil .GVKForObject (ro , scheme )
65
+ gvk , err := apiutil .GVKForObject (controlled , scheme )
70
66
if err != nil {
71
67
return err
72
68
}
@@ -92,18 +88,14 @@ func SetControllerReference(owner, controlled metav1.Object, scheme *runtime.Sch
92
88
// SetOwnerReference is a helper method to make sure the given object contains an object reference to the object provided.
93
89
// This allows you to declare that owner has a dependency on the object without specifying it as a controller.
94
90
// If a reference to the same object already exists, it'll be overwritten with the newly provided version.
95
- func SetOwnerReference (owner , object metav1. Object , scheme * runtime.Scheme ) error {
91
+ func SetOwnerReference (owner , object Object , scheme * runtime.Scheme ) error {
96
92
// Validate the owner.
97
- ro , ok := owner .(runtime.Object )
98
- if ! ok {
99
- return fmt .Errorf ("%T is not a runtime.Object, cannot call SetOwnerReference" , owner )
100
- }
101
93
if err := validateOwner (owner , object ); err != nil {
102
94
return err
103
95
}
104
96
105
97
// Create a new owner ref.
106
- gvk , err := apiutil .GVKForObject (ro , scheme )
98
+ gvk , err := apiutil .GVKForObject (object , scheme )
107
99
if err != nil {
108
100
return err
109
101
}
@@ -281,9 +273,9 @@ func RemoveFinalizerWithError(o runtime.Object, finalizer string) error {
281
273
return nil
282
274
}
283
275
284
- // KubernetesObject allows functions to work indistinctly with any resource that
276
+ // Object allows functions to work indistinctly with any resource that
285
277
// implements both Object interfaces.
286
- type KubernetesObject interface {
278
+ type Object interface {
287
279
metav1.Object
288
280
runtime.Object
289
281
}
0 commit comments