/** * */ public static function init() { $builder = new \DI\ContainerBuilder(); $builder->setDefinitionCache(new ApcCache()); $builder->writeProxiesToFile(true, 'tmp/proxies'); self::$container = $builder->build(); self::$container->set('routeCollection', new RouteCollection()); }
public static function run($worker_id, $data) { $jobs = Config::getJobs(); $job =& $jobs[$worker_id]; if ($job === null) { var_dump($worker_id); return false; } $builder = new \DI\ContainerBuilder(); // $builder->setDefinitionCache(new Doctrine\Common\Cache\RedisCache()); $builder->writeProxiesToFile(true, 'tmp/proxies'); // $builder->useAutowiring(false); $builder->useAnnotations(false); $builder->addDefinitions('diconfig.php'); $container = $builder->build(); // $dependencies = &$job['dependencies']; // // if ($dependencies !== null) { // $dependencies_classes = explode(',',$dependencies); // foreach($dependencies_classes as $class) { // $depend_jober = new $class($params); // $params = $depend_jober->run(); // if ($params === false) { // return false; // } // } // } $retries =& $job['retries']; $job_params =& $job['params']; $class =& $job['class']; $exec_count = 0; do { $result = $container->get($class)->run($data, $job_params); $exec_count++; } while ($result === false && $exec_count < $retries); if ($result === false) { $notify = Config::getNotify(); switch ($notify['dispatch_mode']) { case 1: break; case 2: break; } } }
exit(0); } $classLoader = (require 'Vendor/autoload.php'); date_default_timezone_set(TIMEZONE); define('CACHE_DI_PATH', 'Cache/DI'); define('CACHE_DOCTRINE_PROXY_PATH', 'Cache/DoctrineProxies'); define('JS_FOLDER', '/js'); define('CSS_FOLDER', '/css'); define('CONSOLIDATE_FOLDER', '/consolidated'); \Fraym\Cache\Cache::createCacheFolders(); $builder = new \DI\ContainerBuilder(); $builder->useAnnotations(true); if (\Fraym\Core::ENV_STAGING === ENV || \Fraym\Core::ENV_PRODUCTION === ENV) { error_reporting(-1); ini_set("display_errors", 0); $builder->writeProxiesToFile(true, CACHE_DI_PATH); define('GLOBAL_CACHING_ENABLED', true); $apcEnabled = (extension_loaded('apc') || extension_loaded('apcu')) && ini_get('apc.enabled'); } else { error_reporting(-1); ini_set("display_errors", 1); define('GLOBAL_CACHING_ENABLED', false); $apcEnabled = false; } define('APC_ENABLED', $apcEnabled); if (defined('IMAGE_PROCESSOR') && IMAGE_PROCESSOR === 'Imagick') { $builder->addDefinitions(['Imagine' => DI\object('Imagine\\Imagick\\Imagine')]); } elseif (defined('IMAGE_PROCESSOR') && IMAGE_PROCESSOR === 'Gmagick') { $builder->addDefinitions(['Imagine' => DI\object('Imagine\\Gmagick\\Imagine')]); } else { $builder->addDefinitions(['Imagine' => DI\object('Imagine\\Gd\\Imagine')]);
define('APC_ENABLED', extension_loaded('apc') && ini_get('apc.enabled')); if (\Fraym\Core::ENV_STAGING === ENV || \Fraym\Core::ENV_PRODUCTION === ENV) { error_reporting(0); ini_set("display_errors", 0); if (!is_dir('Cache/DI')) { mkdir('Cache/DI', 0755); } $builder = new \DI\ContainerBuilder(); if (APC_ENABLED) { $cache = new Doctrine\Common\Cache\ApcCache(); } else { $cache = new Doctrine\Common\Cache\ArrayCache(); } $cache->setNamespace('Fraym_instance_' . FRAYM_INSTANCE); $builder->setDefinitionCache($cache); $builder->writeProxiesToFile(true, 'Cache/DI'); $diContainer = $builder->build(); define('GLOBAL_CACHING_ENABLED', true); } else { error_reporting(-1); ini_set("display_errors", 1); $builder = new \DI\ContainerBuilder(); if (APC_ENABLED && \Fraym\Core::ENV_TESTING === ENV) { $cache = new Doctrine\Common\Cache\ApcCache(); } else { $cache = new Doctrine\Common\Cache\ArrayCache(); } $builder->setDefinitionCache($cache); $diContainer = $builder->build(); define('GLOBAL_CACHING_ENABLED', false); }