示例#1
0
 /**
  * Executes all document upserts for documents of the specified type.
  *
  * @param ClassMetadata $class
  * @param array $documents Array of documents to upsert
  * @param array $options Array of options to be used with batchInsert()
  */
 private function executeUpserts(ClassMetadata $class, array $documents, array $options = array())
 {
     $persister = $this->getDocumentPersister($class->name);
     foreach ($documents as $oid => $document) {
         $persister->addUpsert($document);
         unset($this->documentUpserts[$oid]);
     }
     $persister->executeUpserts($options);
     foreach ($documents as $document) {
         $this->lifecycleEventManager->postPersist($class, $document);
     }
 }