/** * Set up the metadata configuration * * @param $value array * @return void */ public function setMetadata(array $value) { if (!isset($value['driver']) || !is_string($value['driver'])) { throw new Zend_Application_Resource_Exception('No Valid Doctrine2 Metadata driver specified'); } if (!isset($value['mappingDir']) || !is_string($value['mappingDir'])) { throw new Zend_Application_Resource_Exception('Doctrine2 Metadata directory not set'); } switch ($value['driver']) { case 'annotation': $driver = \Doctrine\ORM\Mapping\Driver\AnnotationDriver::create($value['mappingDir']); break; case 'php': $driver = new \Doctrine\ORM\Mapping\Driver\PhpDriver($value['mappingDir']); break; case 'xml': $driver = new \Doctrine\ORM\Mapping\Driver\XmlDriver($value['mappingDir']); break; case 'yaml': $driver = new \Doctrine\ORM\Mapping\Driver\YamlDriver($value['mappingDir']); break; default: throw new Zend_Application_Resource_Exception('No valid driver found matching ' . $value['mappingDir']); } $this->_driver = $driver; $config = $this->getConfig(); $config->setMetadataDriverImpl($driver); }
/** * Creates an entity manager to use for all tests * * @return Doctrine\ORM\EntityManager */ protected function _createEntityManager() { $conn = \Doctrine\DBAL\DriverManager::getConnection(array('driver' => 'pdo_sqlite', 'memory' => true)); $config = new \Doctrine\ORM\Configuration(); $config->setProxyDir(__DIR__ . '/../Proxies'); $config->setProxyNamespace('DoctrineExtensions\\NestedSet\\Tests\\Proxies'); $config->setMetadataDriverImpl(\Doctrine\ORM\Mapping\Driver\AnnotationDriver::create()); return \Doctrine\ORM\EntityManager::create($conn, $config); }
/** * @return Config */ protected function registerDoctrine() : Config { // Configure Database Layer (Doctrine) $this->getContainer()->add('doctrine_connection', ['url' => 'sqlite://' . $this->getContainer()->get('vars_directory') . '/database.sqlite']); // Doctrine Metatadata Driver $this->getContainer()->share(MappingDriver::class, function () { // register the doctrine annotations AnnotationRegistry::registerFile(realpath(__DIR__ . '/../../../vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php')); return AnnotationDriver::create([realpath(__DIR__ . '/../Models')]); }); return $this; }
/** * Mock factory method to create an EntityManager. * * @param unknown_type $conn * @param unknown_type $name * @param Doctrine_Configuration $config * @param Doctrine_EventManager $eventManager * @return Doctrine\ORM\EntityManager */ public static function create($conn, \Doctrine\ORM\Configuration $config = null, \Doctrine\Common\EventManager $eventManager = null) { if (is_null($config)) { $config = new \Doctrine\ORM\Configuration(); $config->setProxyDir(__DIR__ . '/../Proxies'); $config->setProxyNamespace('Doctrine\\Tests\\Proxies'); $config->setMetadataDriverImpl(\Doctrine\ORM\Mapping\Driver\AnnotationDriver::create()); } if (is_null($eventManager)) { $eventManager = new \Doctrine\Common\EventManager(); } return new EntityManagerMock($conn, $config, $eventManager); }
public function boot() { if (\Config::get('doctrine')) { $em = $this->app->make('Doctrine\\ORM\\EntityManager'); $driver = \Doctrine\ORM\Mapping\Driver\AnnotationDriver::create(__DIR__); $driverChain = $em->getConfiguration()->getMetadataDriverImpl(); $driverChain->addDriver($driver, 'Barnetik\\DoctrineAuth'); } Auth::extend('doctrine', function ($app) { $provider = new DoctrineUserProvider($app->make('Doctrine\\ORM\\EntityManager'), config('auth.model')); return new \Illuminate\Auth\Guard($provider, $app['session.store']); }); $this->commands(['Barnetik\\DoctrineAuth\\Console\\Commands\\CreateUser', 'Barnetik\\DoctrineAuth\\Console\\Commands\\PublishUserModel']); }