Ver código fonte

Add AppCache

Jordi Boggiano 13 anos atrás
pai
commit
e3e252236a

+ 13 - 3
app/AppCache.php

@@ -1,9 +1,19 @@
 <?php
 
-require_once __DIR__.'/AppKernel.php';
-
 use Symfony\Bundle\FrameworkBundle\HttpCache\HttpCache;
 
 class AppCache extends HttpCache
 {
-}
+    protected function getOptions()
+    {
+        return array(
+            'debug'                  => false,
+            'default_ttl'            => 0,
+            'private_headers'        => array(),
+            'allow_reload'           => false,
+            'allow_revalidate'       => false,
+            'stale_while_revalidate' => 60,
+            'stale_if_error'         => 86400,
+        );
+    }
+}

+ 3 - 1
src/Packagist/WebBundle/Controller/ApiController.php

@@ -37,6 +37,8 @@ class ApiController extends Controller
             $data[$package->getName()] = $package->toArray();
         }
 
-        return new Response(json_encode($data), 200, array('Content-Type' => 'application/json'));
+        $response = new Response(json_encode($data), 200, array('Content-Type' => 'application/json'));
+        $response->setSharedMaxAge(60);
+        return $response;
     }
 }

+ 3 - 3
web/app.php

@@ -4,12 +4,12 @@ $_SERVER['REQUEST_URI'] = str_replace('//get', '/get', $_SERVER['REQUEST_URI']);
 
 require_once __DIR__.'/../app/bootstrap.php.cache';
 require_once __DIR__.'/../app/AppKernel.php';
-//require_once __DIR__.'/../app/bootstrap_cache.php.cache';
-//require_once __DIR__.'/../app/AppCache.php';
+require_once __DIR__.'/../app/AppCache.php';
 
 use Symfony\Component\HttpFoundation\Request;
 
-//$kernel = new AppCache(new AppKernel('prod', false));
 $kernel = new AppKernel('prod', false);
 $kernel->loadClassCache();
+// wrap the default AppKernel with the AppCache one
+$kernel = new AppCache($kernel);
 $kernel->handle(Request::createFromGlobals())->send();