code: func NewEstablishingController(crdInformer informers.CustomResourceDefinitionInformer,
  	crdClient client.CustomResourceDefinitionsGetter) *EstablishingController {
  	ec := &EstablishingController{
  		crdClient: crdClient,
  		crdLister: crdInformer.Lister(),
  		crdSynced: crdInformer.Informer().HasSynced,
  		queue:     workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "crdEstablishing"),
  	}
  
  	ec.syncFn = ec.sync
  
  	return ec
  }
docs: // NewEstablishingController creates new EstablishingController.