Ejemplo n.º 1
0
 /**
  * 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);
 }
Ejemplo n.º 2
0
 /**
  * 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);
 }
Ejemplo n.º 3
0
 /**
  * @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']);
 }