2018-04-17 07:51:59 +00:00
|
|
|
package k8s
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/sirupsen/logrus"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Translator struct {
|
|
|
|
logrus.FieldLogger
|
|
|
|
|
|
|
|
GenericResourceCache
|
|
|
|
|
|
|
|
KeelSelector string
|
|
|
|
}
|
|
|
|
|
2024-11-04 19:02:58 +00:00
|
|
|
func (t *Translator) OnAdd(obj interface{}, isInInitialList bool) {
|
2018-04-17 07:51:59 +00:00
|
|
|
gr, err := NewGenericResource(obj)
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("OnAdd failed to add resource %T: %#v", obj, obj)
|
|
|
|
return
|
|
|
|
}
|
2018-04-30 10:26:58 +00:00
|
|
|
t.Debugf("added %s %s", gr.Kind(), gr.Name)
|
2018-04-17 07:51:59 +00:00
|
|
|
t.GenericResourceCache.Add(gr)
|
|
|
|
}
|
|
|
|
|
|
|
|
func (t *Translator) OnUpdate(oldObj, newObj interface{}) {
|
|
|
|
gr, err := NewGenericResource(newObj)
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("OnUpdate failed to update resource %T: %#v", newObj, newObj)
|
|
|
|
return
|
|
|
|
}
|
2018-04-30 10:26:58 +00:00
|
|
|
t.Debugf("updated %s %s", gr.Kind(), gr.Name)
|
2018-04-17 07:51:59 +00:00
|
|
|
t.GenericResourceCache.Add(gr)
|
|
|
|
}
|
|
|
|
|
|
|
|
func (t *Translator) OnDelete(obj interface{}) {
|
|
|
|
gr, err := NewGenericResource(obj)
|
|
|
|
if err != nil {
|
|
|
|
t.Errorf("OnDelete failed to delete resource %T: %#v", obj, obj)
|
|
|
|
return
|
|
|
|
}
|
2018-04-30 10:26:58 +00:00
|
|
|
t.Debugf("deleted %s %s", gr.Kind(), gr.Name)
|
2018-04-17 07:51:59 +00:00
|
|
|
t.GenericResourceCache.Remove(gr.GetIdentifier())
|
|
|
|
}
|