code: func (pmf *PriorityMetadataFactory) PriorityMetadata(pod *v1.Pod, nodeNameToInfo map[string]*schedulernodeinfo.NodeInfo) interface{} {
  	// If we cannot compute metadata, just return nil
  	if pod == nil {
  		return nil
  	}
  	return &priorityMetadata{
  		nonZeroRequest:          getNonZeroRequests(pod),
  		podTolerations:          getAllTolerationPreferNoSchedule(pod.Spec.Tolerations),
  		affinity:                pod.Spec.Affinity,
  		podSelectors:            getSelectors(pod, pmf.serviceLister, pmf.controllerLister, pmf.replicaSetLister, pmf.statefulSetLister),
  		controllerRef:           metav1.GetControllerOf(pod),
  		podFirstServiceSelector: getFirstServiceSelector(pod, pmf.serviceLister),
  		totalNumNodes:           len(nodeNameToInfo),
  	}
  }
docs: // PriorityMetadata is a PriorityMetadataProducer.  Node info can be nil.