code: func (d *namespacedResourcesDeleter) listCollection(gvr schema.GroupVersionResource, namespace string) (*unstructured.UnstructuredList, bool, error) {
  	klog.V(5).Infof("namespace controller - listCollection - namespace: %s, gvr: %v", namespace, gvr)
  
  	key := operationKey{operation: operationList, gvr: gvr}
  	if !d.opCache.isSupported(key) {
  		klog.V(5).Infof("namespace controller - listCollection ignored since not supported - namespace: %s, gvr: %v", namespace, gvr)
  		return nil, false, nil
  	}
  
  	unstructuredList, err := d.dynamicClient.Resource(gvr).Namespace(namespace).List(metav1.ListOptions{})
  	if err == nil {
  		return unstructuredList, true, nil
  	}
  
  	// this is strange, but we need to special case for both MethodNotSupported and NotFound errors
  	// TODO: https://github.com/kubernetes/kubernetes/issues/22413
  	// we have a resource returned in the discovery API that supports no top-level verbs:
  	//  /apis/extensions/v1beta1/namespaces/default/replicationcontrollers
  	// when working with this resource type, we will get a literal not found error rather than expected method not supported
  	// remember next time that this resource does not support delete collection...
  	if errors.IsMethodNotSupported(err) || errors.IsNotFound(err) {
  		klog.V(5).Infof("namespace controller - listCollection not supported - namespace: %s, gvr: %v", namespace, gvr)
  		d.opCache.setNotSupported(key)
  		return nil, false, nil
  	}
  
  	return nil, true, err
  }
docs: // listCollection will list the items in the specified namespace
  // it returns the following:
  //  the list of items in the collection (if found)
  //  a boolean if the operation is supported
  //  an error if the operation is supported but could not be completed.