code: func (f *sharedInformerFactory) ForResource(resource schema.GroupVersionResource) (GenericInformer, error) {
  	switch resource {
  	// Group=example.apiserver.code-generator.k8s.io, Version=v1
  	case v1.SchemeGroupVersion.WithResource("testtypes"):
  		return &genericInformer{resource: resource.GroupResource(), informer: f.Example().V1().TestTypes().Informer()}, nil
  
  		// Group=example.test.apiserver.code-generator.k8s.io, Version=v1
  	case example2v1.SchemeGroupVersion.WithResource("testtypes"):
  		return &genericInformer{resource: resource.GroupResource(), informer: f.SecondExample().V1().TestTypes().Informer()}, nil
  
  	}
  
  	return nil, fmt.Errorf("no informer found for %v", resource)
  }
docs: // ForResource gives generic access to a shared informer of the matching type
  // TODO extend this to unknown resources with a client pool