private function PersistentObject::completeOwningSide

If this is an inverse side association complete the owning side.

Parameters

string $field:

ClassMetadata $targetClass:

object $targetObject:

2 calls to PersistentObject::completeOwningSide()
PersistentObject::add in drupal/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/PersistentObject.php
Add an object to a collection
PersistentObject::set in drupal/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/PersistentObject.php
Sets a persistent fields value.

File

drupal/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/PersistentObject.php, line 161

Class

PersistentObject
PersistentObject base class that implements getter/setter methods for all mapped fields and associations by overriding __call.

Namespace

Doctrine\Common\Persistence

Code

private function completeOwningSide($field, $targetClass, $targetObject) {

  // add this object on the owning side aswell, for obvious infinite recursion
  // reasons this is only done when called on the inverse side.
  if ($this->cm
    ->isAssociationInverseSide($field)) {
    $mappedByField = $this->cm
      ->getAssociationMappedByTargetField($field);
    $targetMetadata = self::$objectManager
      ->getClassMetadata($targetClass);
    $setter = ($targetMetadata
      ->isCollectionValuedAssociation($mappedByField) ? "add" : "set") . $mappedByField;
    $targetObject
      ->{$setter}($this);
  }
}