/** Sets all the don't-cache headers on the HttpResponse */ private void setAlwaysCacheHeaders(HttpResponse res) { res.setField(HttpFields.__CacheControl, "max-age=29723626"); Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.YEAR, 1); res.setField(HttpFields.__Expires, HttpFields.formatDate(calendar, false)); res.setField(HttpFields.__LastModified, HttpFields.__01Jan1970); res.removeField(HttpFields.__Pragma); res.setField(HttpFields.__ETag, "foo"); }
public void handle(String pathInContext, String pathParams, HttpRequest httpRequest, HttpResponse res) throws HttpException, IOException { if (!"/cachedContentTest".equals(pathInContext)) return; res.setField(HttpFields.__ContentType, "text/html"); setAlwaysCacheHeaders(res); OutputStreamWriter writer = new OutputStreamWriter(res.getOutputStream()); writer.write("<html><body>"); writer.write(Long.toString(System.currentTimeMillis())); writer.write("</body></html>"); writer.flush(); writer.close(); httpRequest.setHandled(true); }
while (values.hasMoreElements()) { String value = (String) values.nextElement(); response.setField(name, value);
@Override public void handle(String pathInContext, String pathParams, HttpRequest req, HttpResponse res) throws HttpException, IOException { try { LOGGER.debug("Thread name: " + Thread.currentThread().getName()); res.setField(HttpFields.__ContentType, "text/plain"); setNoCacheHeaders(res);
response.setField("Via", "1.1 (jetty)");
response.setField(HttpFields.__Connection, "close"); // TODO Needed for IE???? handleConnect(pathInContext, pathParams, request, response); return;
public void sendData(HttpRequest request, HttpResponse response, String pathInContext, Resource resource, boolean writeHeaders) throws IOException { if (!proxyInjectionMode) { super.sendData(request, response, pathInContext, resource, writeHeaders); return; } ResourceCache.ResourceMetaData metaData = (ResourceCache.ResourceMetaData) resource.getAssociate(); String mimeType = metaData.getMimeType(); response.setContentType(mimeType); if (resource.length() != -1) { response.setField(HttpFields.__ContentLength, metaData.getLength()); } InjectionHelper.injectJavaScript(request, response, resource.getInputStream(), response.getOutputStream(), debugURL); request.setHandled(true); }