diff options
author | Robin Appelman <icewind@owncloud.com> | 2014-03-24 14:55:03 +0100 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2014-03-24 14:55:03 +0100 |
commit | 0d0aac6fffb2da47054ed19eae835aa7d9904692 (patch) | |
tree | ad55d9471967736a86eb79e37e47d669d07fd3ce /lib/private/server.php | |
parent | 4c8a83e82fe4dfe5b83e09194060ecbf44f44791 (diff) | |
download | nextcloud-server-0d0aac6fffb2da47054ed19eae835aa7d9904692.tar.gz nextcloud-server-0d0aac6fffb2da47054ed19eae835aa7d9904692.zip |
Load the routes when matching or generating a route instead of when creating the router
Diffstat (limited to 'lib/private/server.php')
-rw-r--r-- | lib/private/server.php | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/private/server.php b/lib/private/server.php index 8c9ea39c562..5c83f3ef495 100644 --- a/lib/private/server.php +++ b/lib/private/server.php @@ -159,7 +159,15 @@ class Server extends SimpleContainer implements IServerContainer { return new \OC\BackgroundJob\JobList($c->getDatabaseConnection(), $config); }); $this->registerService('Router', function ($c){ - $router = new \OC\Route\Router(); + /** + * @var Server $c + */ + $cacheFactory = $c->getMemCacheFactory(); + if ($cacheFactory->isAvailable()) { + $router = new \OC\Route\CachingRouter($cacheFactory->create('route')); + } else { + $router = new \OC\Route\Router(); + } return $router; }); } @@ -327,7 +335,7 @@ class Server extends SimpleContainer implements IServerContainer { /** * Returns an \OCP\CacheFactory instance * - * @return \OCP\CacheFactory + * @return \OCP\ICacheFactory */ function getMemCacheFactory() { return $this->query('MemCacheFactory'); @@ -375,8 +383,6 @@ class Server extends SimpleContainer implements IServerContainer { * @return \OCP\Route\IRouter */ function getRouter(){ - $router = $this->query('Router'); - $router->loadRoutes(); - return $router; + return $this->query('Router'); } } |