type metaProxier … // NewMetaProxier returns a dual-stack "meta-proxier". Proxier API // calls will be dispatched to the ProxyProvider instances depending // on address family. func NewMetaProxier(ipv4Proxier, ipv6Proxier proxy.Provider) proxy.Provider { … } // Sync immediately synchronizes the ProxyProvider's current state to // proxy rules. func (proxier *metaProxier) Sync() { … } // SyncLoop runs periodic work. This is expected to run as a // goroutine or as the main loop of the app. It does not return. func (proxier *metaProxier) SyncLoop() { … } // OnServiceAdd is called whenever creation of new service object is observed. func (proxier *metaProxier) OnServiceAdd(service *v1.Service) { … } // OnServiceUpdate is called whenever modification of an existing // service object is observed. func (proxier *metaProxier) OnServiceUpdate(oldService, service *v1.Service) { … } // OnServiceDelete is called whenever deletion of an existing service // object is observed. func (proxier *metaProxier) OnServiceDelete(service *v1.Service) { … } // OnServiceSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. func (proxier *metaProxier) OnServiceSynced() { … } // OnEndpointSliceAdd is called whenever creation of a new endpoint slice object // is observed. func (proxier *metaProxier) OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice) { … } // OnEndpointSliceUpdate is called whenever modification of an existing endpoint // slice object is observed. func (proxier *metaProxier) OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice) { … } // OnEndpointSliceDelete is called whenever deletion of an existing endpoint slice // object is observed. func (proxier *metaProxier) OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice) { … } // OnEndpointSlicesSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. func (proxier *metaProxier) OnEndpointSlicesSynced() { … } // OnNodeAdd is called whenever creation of new node object is observed. func (proxier *metaProxier) OnNodeAdd(node *v1.Node) { … } // OnNodeUpdate is called whenever modification of an existing // node object is observed. func (proxier *metaProxier) OnNodeUpdate(oldNode, node *v1.Node) { … } // OnNodeDelete is called whenever deletion of an existing node // object is observed. func (proxier *metaProxier) OnNodeDelete(node *v1.Node) { … } // OnNodeSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. func (proxier *metaProxier) OnNodeSynced() { … } // OnServiceCIDRsChanged is called whenever a change is observed // in any of the ServiceCIDRs, and provides complete list of service cidrs. func (proxier *metaProxier) OnServiceCIDRsChanged(cidrs []string) { … }