mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 16:24:19 -04:00
committed by
Miek Gieben
parent
2bd77d0823
commit
f9fb9db171
@@ -1,14 +1,12 @@
|
||||
package object
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
"k8s.io/client-go/tools/cache"
|
||||
)
|
||||
|
||||
// NewIndexerInformer is a copy of the cache.NewIndexInformer function, but allows Process to have a conversion function (ToFunc).
|
||||
func NewIndexerInformer(lw cache.ListerWatcher, objType runtime.Object, resyncPeriod time.Duration, h cache.ResourceEventHandler, indexers cache.Indexers, convert ToFunc) (cache.Indexer, cache.Controller) {
|
||||
func NewIndexerInformer(lw cache.ListerWatcher, objType runtime.Object, h cache.ResourceEventHandler, indexers cache.Indexers, convert ToFunc) (cache.Indexer, cache.Controller) {
|
||||
clientState := cache.NewIndexer(cache.DeletionHandlingMetaNamespaceKeyFunc, indexers)
|
||||
|
||||
fifo := cache.NewDeltaFIFO(cache.MetaNamespaceKeyFunc, clientState)
|
||||
@@ -17,7 +15,7 @@ func NewIndexerInformer(lw cache.ListerWatcher, objType runtime.Object, resyncPe
|
||||
Queue: fifo,
|
||||
ListerWatcher: lw,
|
||||
ObjectType: objType,
|
||||
FullResyncPeriod: resyncPeriod,
|
||||
FullResyncPeriod: defaultResyncPeriod,
|
||||
RetryOnError: false,
|
||||
Process: func(obj interface{}) error {
|
||||
for _, d := range obj.(cache.Deltas) {
|
||||
@@ -49,3 +47,5 @@ func NewIndexerInformer(lw cache.ListerWatcher, objType runtime.Object, resyncPe
|
||||
}
|
||||
return clientState, cache.New(cfg)
|
||||
}
|
||||
|
||||
const defaultResyncPeriod = 0
|
||||
|
||||
Reference in New Issue
Block a user