Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Wilkins2015-02-06 02:48:34 +0000
committerGreg Wilkins2015-02-06 02:48:34 +0000
commit14cd10b67667af2f57cb0d608095dc97dee14131 (patch)
treeff3e1f1939668487b15addcf3c568fb95781bbcc /jetty-servlets/src/main
parentab8b7f8c8d4a628bfb772f4ab9106b6d3abd6e98 (diff)
downloadorg.eclipse.jetty.project-14cd10b67667af2f57cb0d608095dc97dee14131.tar.gz
org.eclipse.jetty.project-14cd10b67667af2f57cb0d608095dc97dee14131.tar.xz
org.eclipse.jetty.project-14cd10b67667af2f57cb0d608095dc97dee14131.zip
experimenting with push API
Diffstat (limited to 'jetty-servlets/src/main')
-rw-r--r--jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java18
1 files changed, 14 insertions, 4 deletions
diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java
index de46b06a26..3d124c28f0 100644
--- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java
+++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushSessionCacheFilter.java
@@ -82,6 +82,16 @@ public class PushSessionCacheFilter implements Filter
target._etag=response.getHttpFields().get(HttpHeader.ETAG);
target._lastModified=response.getHttpFields().get(HttpHeader.LAST_MODIFIED);
+ // Don't associate pushes
+ if (request.isPush())
+ {
+ if (LOG.isDebugEnabled())
+ LOG.debug("Pushed {} for {}",request.getResponse().getStatus(),request.getRequestURI());
+ return;
+ }
+ else if (LOG.isDebugEnabled())
+ LOG.debug("Served {} for {}",request.getResponse().getStatus(),request.getRequestURI());
+
// Does this request have a referer?
String referer = request.getHttpFields().get(HttpHeader.REFERER);
@@ -158,13 +168,13 @@ public class PushSessionCacheFilter implements Filter
if (baseRequest.isPushSupported() && target._associated.size()>0)
{
PushBuilder builder = baseRequest.getPushBuilder();
- if (!session.isNew())
- builder.setConditional(true);
for (Target associated : target._associated.values())
{
+ String path = associated._path;
if (LOG.isDebugEnabled())
- LOG.debug("PUSH {}->{}",uri,associated);
- builder.push(associated._path,associated._etag,associated._lastModified);
+ LOG.debug("PUSH {} <- {}",path,uri);
+
+ builder.push(path,associated._etag,associated._lastModified);
}
}

Back to the top