open-orchestra/open-orchestra-model-bundle

View on GitHub
ModelBundle/DataFixtures/MongoDB/LoadRouteDocumentData.php

Summary

Maintainability
A
0 mins
Test Coverage
<?php

namespace OpenOrchestra\ModelBundle\DataFixtures\MongoDB;

use Doctrine\Common\DataFixtures\FixtureInterface;
use Doctrine\Common\Persistence\ObjectManager;
use OpenOrchestra\ModelBundle\Document\RouteDocument;
use OpenOrchestra\ModelInterface\DataFixtures\OrchestraFunctionalFixturesInterface;

/**
 * Class LoadRouteDocumentData
 */
class LoadRouteDocumentData implements FixtureInterface, OrchestraFunctionalFixturesInterface
{
    /**
     * Load data fixtures with the passed EntityManager
     *
     * @param ObjectManager $manager
     */
    public function load(ObjectManager $manager)
    {
        $patterns = array(
            'foo',
            'foo/{bar}',
            'foo/bar',
            'baz/bar',
            'foo/{bar}/baz',
            'zero/one/two/three/four/five/six/{seven}/eight/nine/ten/eleven',
            'zero/one/two/three/four/five/six/{seven}/eight/nine/ten/{eleven}/twelve',
            'zero/one/two/three/four/five/six/{seven}/eight/nine/ten/eleven/twelve',
            'zero/one/two/three/four/five/six/{seven}/eight/nine/ten/eleven/{twelve}'
        );

        foreach ($patterns as $pattern) {
            $route = new RouteDocument();
            $route->setName($pattern);
            $route->setPattern($pattern);

            $manager->persist($route);
        }

        $manager->flush();
    }
}