コード例 #1
0
ファイル: Plugin.php プロジェクト: projectesIF/Sirius
    /**
     * Initialise.
     *
     * Runs at plugin init time.
     *
     * @return void
     */
    public function initialize()
    {
        $autoloader = new Zikula_KernelClassLoader();
        $autoloader->spl_autoload_register();
        $autoloader->register('Gedmo', __DIR__ . '/lib/vendor/l3pp4rd/DoctrineExtensions/lib', '\\');
        $autoloader->register('DoctrineExtensions\\StandardFields', __DIR__ . '/lib', '\\');
        $autoloader->register('DoctrineExtensions', __DIR__ . '/lib/vendor/beberlei/DoctrineExtensions/lib', '\\');
        
        Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('Gedmo', __DIR__ . '/lib/vendor/l3pp4rd/DoctrineExtensions/lib');
        Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('DoctrineExtensions\\StandardFields', __DIR__ . '/lib');
        
        include 'ExtensionsManager.php';
        $definition = new Zikula_ServiceManager_Definition('SystemPlugins_DoctrineExtensions_ExtensionsManager', array(new Zikula_ServiceManager_Reference('doctrine.eventmanager'), new Zikula_ServiceManager_Reference('zikula.servicemanager')));
        $this->serviceManager->registerService('doctrine_extensions', $definition);

        $types = array('Loggable', 'Sluggable', 'Timestampable', 'Translatable', 'Tree', 'Sortable');
        foreach ($types as $type) {
            // The listener for Translatable is incorrectly named TranslationListener
            if ($type != "Translatable") {
                $definition = new Zikula_ServiceManager_Definition("Gedmo\\$type\\{$type}Listener");
            } else {
                $definition = new Zikula_ServiceManager_Definition("Gedmo\\Translatable\\TranslationListener");
            }
            $this->serviceManager->registerService(strtolower("doctrine_extensions.listener.$type"), $definition);
        }
        
        $definition = new Zikula_ServiceManager_Definition("DoctrineExtensions\\StandardFields\\StandardFieldsListener");
        $this->serviceManager->registerService(strtolower("doctrine_extensions.listener.standardfields"), $definition);
    }
コード例 #2
0
ファイル: Plugin.php プロジェクト: planetenkiller/core
 public function initialize()
 {
     return;
     // register symfony validation annorations
     Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('Symfony\\Component\\Validator\\Constraints', __DIR__ . '/../../vendor/symfony/src');
     // register validator service
     $fileLocator = new FileLocator(array(__DIR__ . '/Resources/config/validator.xml'));
     $xmlFileLoader = new XmlFileLoader($this->container->get('service_container'), $fileLocator);
     $xmlFileLoader->load(__DIR__ . '/Resources/config/validator.xml');
     // setup symfony forms
     $registry = new \Zikula\Core\Forms\DoctrineRegistryImpl();
     $csrf = new \Symfony\Component\Form\Extension\Csrf\CsrfExtension(new \Zikula\Core\Forms\ZikulaCsrfProvider());
     $core = new \Symfony\Component\Form\Extension\Core\CoreExtension();
     $validator = new \Symfony\Component\Form\Extension\Validator\ValidatorExtension($this->container->get("validator"));
     $zk = new \Zikula\Core\Forms\ZikulaExtension();
     $doctrine = new \Symfony\Bridge\Doctrine\Form\DoctrineOrmExtension($registry);
     $formFactory = new \Symfony\Component\Form\FormFactory(array($core, $csrf, $validator, $zk, $doctrine));
     $this->container->set('symfony.formfactory', $formFactory);
     $formRenderer = new \Zikula\Core\Forms\FormRenderer($this->dispatcher);
     $this->container->set('symfony.formrenderer', $formRenderer);
 }
コード例 #3
0
ファイル: Plugin.php プロジェクト: rtznprmpftl/Zikulacore
 /**
  * Initialise.
  *
  * Runs at plugin init time.
  *
  * @return void
  */
 public function initialize()
 {
     $autoloader = new UniversalClassLoader();
     $autoloader->register();
     $autoloader->register('DoctrineExtensions\\StandardFields', __DIR__ . '/lib');
     Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('Gedmo', dirname(__DIR__) . '/../vendor/gedmo/doctrine-extensions/lib');
     Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('DoctrineExtensions\\StandardFields', __DIR__ . '/lib');
     include 'ExtensionsManager.php';
     $definition = new Definition('SystemPlugins_DoctrineExtensions_ExtensionsManager', array(new Reference('doctrine.eventmanager'), new Reference('service_container')));
     $this->container->setDefinition('doctrine_extensions', $definition);
     $types = array('Loggable', 'Sluggable', 'Timestampable', 'Translatable', 'Tree', 'Sortable');
     foreach ($types as $type) {
         // The listener for Translatable is incorrectly named TranslationListener
         if ($type != "Translatable") {
             $definition = new Definition("Gedmo\\{$type}\\{$type}Listener");
         } else {
             $definition = new Definition("Gedmo\\Translatable\\TranslationListener");
         }
         $this->container->setDefinition(strtolower("doctrine_extensions.listener.{$type}"), $definition);
     }
     $definition = new Definition("DoctrineExtensions\\StandardFields\\StandardFieldsListener");
     $this->container->setDefinition(strtolower("doctrine_extensions.listener.standardfields"), $definition);
 }
コード例 #4
0
ファイル: bootstrap.php プロジェクト: rmatil/angular-cms
<?php

require_once __DIR__ . "/../../../../vendor/autoload.php";
// register annotations of jms serializer and doctrine
Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('JMS\\Serializer\\Annotation', __DIR__ . '/../../../../vendor/jms/serializer/src');
Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('Doctrine\\Search\\Mapping\\Annotations', __DIR__ . '/../vendor/doctrine/search/lib');
コード例 #5
0
ファイル: index.php プロジェクト: nawrasg/tvguide
<?php

$loader = (require_once __DIR__ . '/../vendor/autoload.php');
Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('JMS\\Serializer\\Annotation', __DIR__ . '/../vendor/jms/serializer/src');
$app = new Domora\TvGuide\Application();
umask(00);
$app->loadRoutes();
$app->run();
コード例 #6
0
ファイル: TestInit.php プロジェクト: ngroot/couchdb-odm
<?php

// Tests/bootstrap.php
$loader = @(include __DIR__ . '/../vendor/.composer/autoload.php');
if (!$loader) {
    die(<<<'EOT'
You must set up the project dependencies, run the following commands:
wget http://getcomposer.org/composer.phar
php composer.phar install
EOT
);
}
use Doctrine\Common\ClassLoader;
$classLoader = new ClassLoader('Doctrine\\Tests', __DIR__ . '/../tests');
$classLoader->register();
Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('Doctrine\\ODM\\CouchDB\\Mapping\\Annotations', __DIR__ . '/../lib');
コード例 #7
0
ファイル: Bootstrap.php プロジェクト: nhp/shopware-4
    /**
     * Init doctrine method
     *
     * @return Shopware\Components\Model\ModelManager
     */
    public function initModels()
    {
       /** @var $config \Doctrine\ORM\Configuration */
        $config = $this->getResource('ModelConfig');

        $cacheResource = $this->getResource('Cache');

        // Check if native Doctrine ApcCache may be used
        if ($cacheResource->getBackend() instanceof Zend_Cache_Backend_Apc) {
            $cache = new Doctrine\Common\Cache\ApcCache();
        } else {
            $cache = new Shopware\Components\Model\Cache($cacheResource);
        }

        // register standard doctrine annotations
        Doctrine\Common\Annotations\AnnotationRegistry::registerFile(
            'Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php'
        );

        // register symfony validation annotions
        Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace(
            'Symfony\Component\Validator\Constraint'
        );

        // register gedmo annotions
        Doctrine\Common\Annotations\AnnotationRegistry::registerFile(
            'Gedmo/Mapping/Annotation/All.php'
        );

        $cachedAnnotationReader = new Doctrine\Common\Annotations\CachedReader(
            new Doctrine\Common\Annotations\AnnotationReader,
            $cache
        );

        $annotationDriver = new Doctrine\ORM\Mapping\Driver\AnnotationDriver(
            $cachedAnnotationReader, array(
            $this->Application()->Loader()->isReadable('Gedmo/Tree/Entity/MappedSuperclass'),
            $this->Application()->AppPath('Models')
        ));

        // create a driver chain for metadata reading
        $driverChain = new Doctrine\ORM\Mapping\Driver\DriverChain();

        // register annotation driver for our application
        $driverChain->addDriver($annotationDriver, 'Gedmo');
        $driverChain->addDriver($annotationDriver, 'Shopware\\Models\\');
        $driverChain->addDriver($annotationDriver, 'Shopware\\CustomModels\\');

        $this->registerResource('ModelAnnotations', $annotationDriver);

        $config->setMetadataDriverImpl($driverChain);

        // Create event Manager
        $eventManager = new \Doctrine\Common\EventManager();

        $treeListener = new Gedmo\Tree\TreeListener;
        $treeListener->setAnnotationReader($cachedAnnotationReader);
        $eventManager->addEventSubscriber($treeListener);

        // Create new shopware event subscriber to handle the entity lifecycle events.
        $liveCycleSubscriber = new \Shopware\Components\Model\EventSubscriber(
            $this->Application()->Events()
        );
        $eventManager->addEventSubscriber($liveCycleSubscriber);

        // now create the entity manager and use the connection
        // settings we defined in our application.ini
        $conn = \Doctrine\DBAL\DriverManager::getConnection(
            array('pdo' => $this->Application()->Db()->getConnection()),
            $config,
            $eventManager
        );

        $entityManager = Shopware\Components\Model\ModelManager::create($conn, $config, $eventManager);

        //if (!is_readable(rtrim($config->getProxyDir(), '/') . '/__CG__ShopwareModelsShopShop.php')) {
        //    $metadata     = $entityManager->getMetadataFactory()->getAllMetadata();
        //    $proxyFactory = $entityManager->getProxyFactory();
        //    $proxyFactory->generateProxyClasses($metadata);
        //}

        return $entityManager;
    }
コード例 #8
0
ファイル: Connection.php プロジェクト: pabloasc/test_social
 private static function newConnect()
 {
     $dir = __DIR__ . '/../../libs/Doctrine/';
     $vendorPath = realpath($dir);
     $ExtensionPath = realpath($dir . '/DoctrineExtensions');
     require_once $vendorPath . '/Doctrine/Common/ClassLoader.php';
     // autoload all vendors
     $loader = new Doctrine\Common\ClassLoader('Doctrine\\Common', $vendorPath);
     $loader->register();
     $loader = new Doctrine\Common\ClassLoader('Doctrine\\DBAL', $vendorPath);
     $loader->register();
     $loader = new Doctrine\Common\ClassLoader('Doctrine\\ORM', $vendorPath);
     $loader->register();
     // gedmo extensions
     $loader = new Doctrine\Common\ClassLoader('Gedmo', $ExtensionPath);
     $loader->register();
     // Pagefanta
     $classLoader = new Doctrine\Common\ClassLoader("Pagerfanta", $ExtensionPath);
     $classLoader->register();
     //MYSQL Functions
     $classLoader = new \Doctrine\Common\ClassLoader('DoctrineExtensions', realpath($dir));
     $classLoader->register();
     // autoloader for Entity namespace
     $loader = new Doctrine\Common\ClassLoader('Entities', $dir);
     $loader->register();
     // ensure standard doctrine annotations are registered
     Doctrine\Common\Annotations\AnnotationRegistry::registerFile($vendorPath . '/Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php');
     // Second configure ORM
     // globally used cache driver
     $cache = new Doctrine\Common\Cache\ArrayCache();
     $reader = new \Doctrine\Common\Annotations\AnnotationReader();
     Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace('Gedmo\\Mapping\\Annotation', $ExtensionPath);
     $driverChain = new \Doctrine\ORM\Mapping\Driver\DriverChain();
     $annotationDriver = new Doctrine\ORM\Mapping\Driver\AnnotationDriver($reader, array($dir . 'Entities', $ExtensionPath . '/Gedmo/Tree/Entity'));
     // drivers
     $driverChain->addDriver($annotationDriver, 'Gedmo\\Tree\\Entity');
     $driverChain->addDriver($annotationDriver, 'Entities');
     // general ORM configuration
     $config = new Doctrine\ORM\Configuration();
     //$config->setProxyDir(sys_get_temp_dir());
     $config->setProxyDir($dir . '/Proxies');
     $config->setProxyNamespace('Proxy');
     $config->setAutoGenerateProxyClasses(true);
     // this can be based on production config. FALSE
     // register metadata driver
     $config->setMetadataDriverImpl($driverChain);
     // use our allready initialized cache driver
     $config->setMetadataCacheImpl($cache);
     $config->setQueryCacheImpl($cache);
     // Third, create event manager and hook prefered extension listeners
     $evm = new Doctrine\Common\EventManager();
     // gedmo extension listeners
     // tree
     $treeListener = new Gedmo\Tree\TreeListener();
     $treeListener->setAnnotationReader($reader);
     $evm->addEventSubscriber($treeListener);
     // timestampable
     $timestampableListener = new Gedmo\Timestampable\TimestampableListener();
     $timestampableListener->setAnnotationReader($reader);
     $evm->addEventSubscriber($timestampableListener);
     // mysql set names UTF-8 if required
     $evm->addEventSubscriber(new Doctrine\DBAL\Event\Listeners\MysqlSessionInit());
     // Finally, create entity manager
     $connection = array('dbname' => DB_DATABASE, 'user' => DB_USER, 'password' => DB_PASSWORD, 'host' => DB_HOST, 'driver' => 'pdo_mysql');
     $config->addCustomDatetimeFunction('YEAR', 'DoctrineExtensions\\Query\\Mysql\\Year');
     $config->addCustomDatetimeFunction('MONTH', 'DoctrineExtensions\\Query\\Mysql\\Month');
     $config->addCustomDatetimeFunction('DAY', 'DoctrineExtensions\\Query\\Mysql\\Day');
     $config->addCustomDatetimeFunction('HOUR', 'DoctrineExtensions\\Query\\Mysql\\Hour');
     $config->addCustomDatetimeFunction('DATE', 'DoctrineExtensions\\Query\\Mysql\\Date');
     $config->addCustomDatetimeFunction('DATEDIFF', 'DoctrineExtensions\\Query\\MySql\\DateDiff');
     try {
         $em = Doctrine\ORM\EntityManager::create($connection, $config, $evm);
     } catch (Exception $e) {
     }
     self::$EntityManager = $em;
 }