-
Notifications
You must be signed in to change notification settings - Fork 0
/
secrets.go
30 lines (24 loc) · 906 Bytes
/
secrets.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
package handlers
import (
v12 "k8s.io/api/core/v1"
"k8s.io/client-go/tools/cache"
)
type secretsHandler struct {
globalHandler GenericHandler
}
func NewSecretsHandler(globalHandler GenericHandler) cache.ResourceEventHandler {
return &secretsHandler{globalHandler: globalHandler}
}
func (s *secretsHandler) OnAdd(obj interface{}, isInInitialList bool) {
secret := obj.(*v12.Secret)
s.globalHandler.OnAdd(secret.ObjectMeta, secret.StringData, secret.Data, isInInitialList)
}
func (s *secretsHandler) OnUpdate(oldObj, newObj interface{}) {
newSecret := newObj.(*v12.Secret)
oldSecret := oldObj.(*v12.Secret)
s.globalHandler.OnUpdate(newSecret.ObjectMeta, oldSecret.StringData, oldSecret.Data, newSecret.StringData, newSecret.Data)
}
func (s *secretsHandler) OnDelete(obj interface{}) {
secret := obj.(*v12.Secret)
s.globalHandler.OnDelete(secret.ObjectMeta, secret.StringData, secret.Data)
}