Beispiel #1
0
 /**
  * Generate an id for the given entity
  *
  * @param object $entity
  *
  * @return mixed
  */
 protected function generateId($entity)
 {
     $class = $this->getClass($entity);
     $metadata = $this->metadataRegistry->getMetadata($class);
     $id = Generators::getGenerator($metadata->getId()->getStrategy())->generate($this, $entity);
     $idProp = $metadata->getId()->getProperty();
     $refl = new \ReflectionObject($entity);
     $refl = $refl->getProperty($idProp);
     $refl->setAccessible(true);
     $refl->setValue($entity, $id);
     $refl->setAccessible(false);
     return $id;
 }