code: func (c *Controller) pvAddedUpdated(obj interface{}) {
  	pv, ok := obj.(*v1.PersistentVolume)
  	if !ok {
  		utilruntime.HandleError(fmt.Errorf("PV informer returned non-PV object: %#v", obj))
  		return
  	}
  	klog.V(4).Infof("Got event on PV %s", pv.Name)
  
  	if protectionutil.NeedToAddFinalizer(pv, volumeutil.PVProtectionFinalizer) || protectionutil.IsDeletionCandidate(pv, volumeutil.PVProtectionFinalizer) {
  		c.queue.Add(pv.Name)
  	}
  }
docs: // pvAddedUpdated reacts to pv added/updated events