private function loadShips(ObjectManager $manager, Faction $faction)
 {
     for ($i = 0; $i < 1000; ++$i) {
         $ship = new Ship();
         $ship->setId(9 + $i);
         $ship->setName('Fake ship ' . $i);
         $faction->addShip($ship);
         $manager->persist($faction);
         $manager->persist($ship);
         $metadata = $manager->getClassMetaData(get_class($ship));
         $metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE);
         $manager->flush();
     }
 }
 public function createShip($shipName, $factionId)
 {
     $em = $this->container->get('doctrine.orm.default_entity_manager');
     $faction = $em->find('AppBundle:Faction', $factionId);
     if (!$faction instanceof Faction) {
         throw new UserError(sprintf('Unknown faction with id "%d"', $factionId));
     }
     $ship = new Ship();
     $ship->setName($shipName);
     $ship->addFaction($faction);
     $em->persist($ship);
     $em->persist($faction);
     try {
         $em->flush();
     } catch (\Exception $e) {
         throw new UserError(sprintf('Could not save ship with name "%s". Retry later', $shipName));
     }
     return ['ship' => $ship, 'faction' => $faction];
 }