@@ 137-159 (lines=23) @@ | ||
134 | /** |
|
135 | * Purge the Doctrine ORM database. |
|
136 | */ |
|
137 | protected function purgeDatabase() |
|
138 | { |
|
139 | if (!self::$kernel->getContainer()->has('doctrine')) { |
|
140 | return; |
|
141 | } |
|
142 | ||
143 | $manager = $this->getEntityManager(); |
|
144 | $connection = $manager->getConnection(); |
|
145 | ||
146 | if ($connection->getDriver() instanceof Driver) { |
|
147 | $connection->executeUpdate('SET foreign_key_checks = 0;'); |
|
148 | } |
|
149 | ||
150 | $purger = new ORMPurger(); |
|
151 | $executor = new ORMExecutor($manager, $purger); |
|
152 | $referenceRepository = new ProxyReferenceRepository($manager); |
|
153 | $executor->setReferenceRepository($referenceRepository); |
|
154 | $executor->purge(); |
|
155 | ||
156 | if ($connection->getDriver() instanceof Driver) { |
|
157 | $connection->executeUpdate('SET foreign_key_checks = 1;'); |
|
158 | } |
|
159 | } |
|
160 | ||
161 | /** |
|
162 | * Returns entity-manager. |
@@ 202-220 (lines=19) @@ | ||
199 | return $execution; |
|
200 | } |
|
201 | ||
202 | protected function purgeDatabase() |
|
203 | { |
|
204 | $manager = self::$kernel->getContainer()->get('doctrine.orm.entity_manager'); |
|
205 | $connection = $manager->getConnection(); |
|
206 | ||
207 | if ($connection->getDriver() instanceof \Doctrine\DBAL\Driver\PDOMySql\Driver) { |
|
208 | $connection->executeUpdate('SET foreign_key_checks = 0;'); |
|
209 | } |
|
210 | ||
211 | $purger = new ORMPurger(); |
|
212 | $executor = new ORMExecutor($manager, $purger); |
|
213 | $referenceRepository = new ProxyReferenceRepository($manager); |
|
214 | $executor->setReferenceRepository($referenceRepository); |
|
215 | $executor->purge(); |
|
216 | ||
217 | if ($connection->getDriver() instanceof \Doctrine\DBAL\Driver\PDOMySql\Driver) { |
|
218 | $connection->executeUpdate('SET foreign_key_checks = 1;'); |
|
219 | } |
|
220 | } |
|
221 | } |
|
222 |