public static function run($uri = null) { $application = new Application(); $application->setCache(new Cache(Config::read('kernel.cache.path'), Config::read('kernel.cache.duration')))->setEventManager(new EventManager())->setAutoLoadManager(new AutoLoadManager())->setModuleManager(new ModuleManager($application->getAutoloadManager(), $application->getEventManager()))->setRequest(new Request(new Uri($uri)))->dispatch(); }