Part-DB.Part-DB-server/src/Doctrine/Purger/ResetAutoIncrementPurgerFactory.php
Jan Böhmer 63065a8b58 Reset autoincrement in a custom purger not in DataFixtures.
This makes things a lot prettier in the DataFixtures.
2021-10-02 20:14:48 +02:00

20 lines
No EOL
693 B
PHP

<?php
namespace App\Doctrine\Purger;
use Doctrine\Bundle\FixturesBundle\Purger\PurgerFactory;
use Doctrine\Common\DataFixtures\Purger\ORMPurger;
use Doctrine\Common\DataFixtures\Purger\PurgerInterface;
use Doctrine\ORM\EntityManagerInterface;
class ResetAutoIncrementPurgerFactory implements PurgerFactory
{
public function createForEntityManager(?string $emName, EntityManagerInterface $em, array $excluded = [], bool $purgeWithTruncate = false) : PurgerInterface
{
$purger = new ResetAutoIncrementORMPurger($em, $excluded);
$purger->setPurgeMode($purgeWithTruncate ? ORMPurger::PURGE_MODE_TRUNCATE : ORMPurger::PURGE_MODE_DELETE);
return $purger;
}
}