示例#1
0
 /**
  * @param ActivityListProviderInterface $provider
  * @param object $entity
  * @param ActivityList $activityList
  */
 protected function fillOwners(ActivityListProviderInterface $provider, $entity, ActivityList $activityList)
 {
     $oldActivityOwners = $activityList->getActivityOwners();
     $newActivityOwners = $provider->getActivityOwners($entity, $activityList);
     $newActivityOwners = new ArrayCollection($newActivityOwners);
     foreach ($oldActivityOwners as $oldOwner) {
         if (!$oldOwner->isOwnerInCollection($newActivityOwners)) {
             $activityList->removeActivityOwner($oldOwner);
         }
     }
     if ($newActivityOwners) {
         foreach ($newActivityOwners as $newOwner) {
             if (!$newOwner->isOwnerInCollection($oldActivityOwners)) {
                 $activityList->addActivityOwner($newOwner);
             }
         }
     }
 }