protected static function compileDoctrineProxies(Bootstrap $bootstrap)
    {
        $cacheManager = $bootstrap->getEarlyInstance(CacheManager::class);
        $objectConfigurationCache = $cacheManager->getCache('Flow_Object_Configuration');
        $coreCache = $cacheManager->getCache('Flow_Core');
        $configurationManager = $bootstrap->getEarlyInstance(ConfigurationManager::class);
        $settings = $configurationManager->getConfiguration(ConfigurationManager::CONFIGURATION_TYPE_SETTINGS, 'Neos.Flow');

        if ($objectConfigurationCache->has('doctrineProxyCodeUpToDate') === false && $coreCache->has('doctrineSetupRunning') === false) {
            $logger = $bootstrap->getEarlyInstance(PsrLoggerFactoryInterface::class)->get('systemLogger');
            $coreCache->set('doctrineSetupRunning', 'White Russian', [], 60);
            $logger->debug('Compiling Doctrine proxies');
            self::executeCommand('neos.flow:doctrine:compileproxies', $settings);
            $coreCache->remove('doctrineSetupRunning');
            $objectConfigurationCache->set('doctrineProxyCodeUpToDate', true);
        }
    }
protected static function compileDoctrineProxies(Bootstrap $bootstrap)
    {
        $cacheManager = $bootstrap->getEarlyInstance(CacheManager::class);
        $objectConfigurationCache = $cacheManager->getCache('Flow_Object_Configuration');
        $coreCache = $cacheManager->getCache('Flow_Core');
        $configurationManager = $bootstrap->getEarlyInstance(ConfigurationManager::class);
        $settings = $configurationManager->getConfiguration(ConfigurationManager::CONFIGURATION_TYPE_SETTINGS, 'Neos.Flow');

        if ($objectConfigurationCache->has('doctrineProxyCodeUpToDate') === false && $coreCache->has('doctrineSetupRunning') === false) {
            $logger = $bootstrap->getEarlyInstance(PsrLoggerFactoryInterface::class)->get('systemLogger');
            $coreCache->set('doctrineSetupRunning', 'White Russian', [], 60);
            $logger->debug('Compiling Doctrine proxies');
            self::executeCommand('neos.flow:doctrine:compileproxies', $settings);
            $coreCache->remove('doctrineSetupRunning');
            $objectConfigurationCache->set('doctrineProxyCodeUpToDate', true);
        }
    }
protected static function compileDoctrineProxies ( Bootstrap $ bootstrap ) { $ cacheManager = $ bootstrap -> getEarlyInstance ( CacheManager :: class ) ; $ objectConfigurationCache = $ cacheManager -> getCache ( 'Flow_Object_Configuration' ) ; $ coreCache = $ cacheManager -> getCache ( 'Flow_Core' ) ; $ configurationManager = $ bootstrap -> getEarlyInstance ( ConfigurationManager :: class ) ; $ settings = $ configurationManager -> getConfiguration ( ConfigurationManager :: CONFIGURATION_TYPE_SETTINGS , 'Neos.Flow' ) ; if ( $ objectConfigurationCache -> has ( 'doctrineProxyCodeUpToDate' ) === false && $ coreCache -> has ( 'doctrineSetupRunning' ) === false ) { $ logger = $ bootstrap -> getEarlyInstance ( PsrLoggerFactoryInterface :: class ) -> get ( 'systemLogger' ) ; $ coreCache -> set ( 'doctrineSetupRunning' , 'White Russian' , [ ] , 60 ) ; $ logger -> debug ( 'Compiling Doctrine proxies' ) ; self :: executeCommand ( 'neos.flow:doctrine:compileproxies' , $ settings ) ; $ coreCache -> remove ( 'doctrineSetupRunning' ) ; $ objectConfigurationCache -> set ( 'doctrineProxyCodeUpToDate' , true ) ; } }
Update Doctrine 2 proxy classes

This is not simply bound to the finishedCompilationRun signal because it
needs the advised proxy classes to run. When that signal is fired, they
have been written, but not loaded.

@param Bootstrap $bootstrap
@return void
Update Doctrine 2 proxy classes