// New creates the controller object
New creates the controller object
// New creates the controller object
func New(saltSuffix, domainName, kubeAPIServerIP string, kubeAPIServerPort int, netClientset *arktos.Clientset, svcClientset *kubernetes.Clientset, informer arktosinformer.NetworkInformer) *Controller {
	utilruntime.Must(arktoscheme.AddToScheme(scheme.Scheme))
	eventBroadcaster := record.NewBroadcaster()
	eventBroadcaster.StartLogging(klog.Infof)
	eventBroadcaster.StartRecordingToSink(&v1core.EventSinkImpl{Interface: svcClientset.CoreV1().EventsWithMultiTenancy(metav1.NamespaceAll, metav1.TenantAll)})
	return &Controller{
		saltSuffix:        saltSuffix,
		domainName:        domainName,
		kubeAPIServerIP:   kubeAPIServerIP,
		kubeAPIServerPort: strconv.Itoa(kubeAPIServerPort),
		store:             informer.Lister(),
		queue:             workqueue.NewRateLimitingQueue(workqueue.DefaultControllerRateLimiter()),
		cacheSynced:       informer.Informer().HasSynced,
		netClientset:      netClientset,
		svcClientset:      svcClientset,
		recorder:          eventBroadcaster.NewRecorder(scheme.Scheme, corev1.EventSource{Component: "flat-network-controller"}),
	}
}
func New ( saltSuffix , domainName , kubeAPIServerIP string , kubeAPIServerPort int , netClientset * arktos . Clientset , svcClientset * kubernetes . Clientset , informer arktosinformer . NetworkInformer ) * Controller { utilruntime . Must ( arktoscheme . AddToScheme ( scheme . Scheme ) ) eventBroadcaster := record . NewBroadcaster ( ) eventBroadcaster . StartLogging ( klog . Infof ) eventBroadcaster . StartRecordingToSink ( & v1core . EventSinkImpl { Interface : svcClientset . CoreV1 ( ) . EventsWithMultiTenancy ( metav1 . NamespaceAll , metav1 . TenantAll ) } ) return & Controller { saltSuffix : saltSuffix , domainName : domainName , kubeAPIServerIP : kubeAPIServerIP , kubeAPIServerPort : strconv . Itoa ( kubeAPIServerPort ) , store : informer . Lister ( ) , queue : workqueue . NewRateLimitingQueue ( workqueue . DefaultControllerRateLimiter ( ) ) , cacheSynced : informer . Informer ( ) . HasSynced , netClientset : netClientset , svcClientset : svcClientset , recorder : eventBroadcaster . NewRecorder ( scheme . Scheme , corev1 . EventSource { Component : " " } ) , } }
New creates the controller object
New creates the controller object