/** * @param ArrayCollection|EmailFolder[] $folders * @param ImapEmailFolderManager $manager */ protected function createImapEmailFolders($folders, ImapEmailFolderManager $manager) { foreach ($folders as $folder) { if ($folder->getId() === null) { $uidValidity = $manager->getUidValidity($folder); if ($uidValidity !== null) { $imapEmailFolder = new ImapEmailFolder(); $imapEmailFolder->setUidValidity($uidValidity); $imapEmailFolder->setFolder($folder); $this->doctrine->getManager()->persist($imapEmailFolder); } if ($folder->hasSubFolders()) { $this->createImapEmailFolders($folder->getSubFolders(), $manager); } } } }