/**
  * Helper function for #removeMailAccountsFromFolder.
  *
  * @param \Conjoon\Data\Entity\Mail\MailFolderEntity $folderEntity
  */
 protected function removeAccounts(\Conjoon\Data\Entity\Mail\MailFolderEntity $folderEntity)
 {
     // inspect accounts
     $orgMailAccounts = $folderEntity->getMailAccounts();
     foreach ($orgMailAccounts as $orgAccount) {
         $folderEntity->removeMailAccount($orgAccount);
     }
     try {
         $this->folderRepository->register($folderEntity);
     } catch (\Exception $e) {
         throw new FolderServiceException("Exception thrown by previous exception", 0, $e);
     }
     try {
         $folders = $this->folderRepository->getChildFolders($folderEntity);
     } catch (\Exception $e) {
         throw new FolderServiceException("Exception thrown by previous exception", 0, $e);
     }
     foreach ($folders as $folder) {
         $this->removeAccounts($folder);
     }
 }