Часто встречается следующий фрагмент кода:
catch (Exception $ex){
$em->clear();
if($em->getConnection()->isTransactionActive())
$em->rollback();
{somecode}
}
Первая мысль - создать наследник EntityManager, содержащий метод, реализующий очистку и откат, и поместить его в контейнер DI.Но класс Doctrine EntityManager в комментариях помечается как окончательный:
/* final */class EntityManager implements EntityManagerInterface
Помощник как сервис будет уродливым.Есть идеи?