getObject(); if (!$entity instanceof User) { return; } if ($event->hasChangedField('login')) { $old = $event->getOldValue('login'); $new = $event->getNewValue('login'); $this->items[] = new UserRenameEvent($entity, $old, $new); } } public function postFlush(PostFlushEventArgs $event) { if (0 !== count($this->items)) { $em = $event->getEntityManager(); foreach ($this->items as $item) { $em->persist($item); } $this->items = []; $em->flush(); } } }