Examples of HttpHeader


Examples of rabbit.http.HttpHeader

     * @param status the status code of the error.
     * @param message the error message to tell the client.
     */
    public void doError (int status, String message) {
  this.statusCode = Integer.toString (status);
  HttpHeader header = responseHandler.getHeader ("HTTP/1.0 400 Bad Request");
  StringBuilder error =
      new StringBuilder (HtmlPage.getPageHeader (this, "400 Bad Request") +
             "Unable to handle request:<br><b>" +
             message +
             "</b></body></html>\n");
  header.setContent (error.toString ());
  sendAndClose (header);
    }
View Full Code Here

Examples of rabbit.http.HttpHeader

  String message = sw.toString ();
  this.statusCode = Integer.toString (statuscode);
  extraInfo = (extraInfo != null ?
         extraInfo + e.toString () :
         e.toString ());
  HttpHeader header = null;
  if (statuscode == 504)
      header = getHttpGenerator ().get504 (e, requestLine);
  else
      header = getHttpGenerator ().getHeader ("HTTP/1.0 400 Bad Request");
 
  StringBuilder sb = new StringBuilder ();
  sb.append (HtmlPage.getPageHeader (this, statuscode + " " +
             header.getReasonPhrase ()) +
       "Unable to handle request:<br><b>" +
       e.getMessage () +
       (header.getContent () != null ?
        "<br>" + header.getContent () :
        "") +
       "</b><br><xmp>" + message + "</xmp></body></html>\n");
  header.setContent (sb.toString ());
  sendAndClose (header);
    }
View Full Code Here

Examples of rabbit.http.HttpHeader

    private void checkAndHandleSSL (ByteBuffer buffer) {
  SSLHandler sslh = new SSLHandler (proxy, this, request, tlh);
  if (sslh.isAllowed ()) {
      sslh.handle (channel, selector, buffer);
  } else {
      HttpHeader badresponse = responseHandler.get403 ();
      sendAndClose (badresponse);
  }
    }      
View Full Code Here

Examples of rabbit.http.HttpHeader

      closeDown ();
 
    }

    private void sendOkReplyAndTunnel (ByteBuffer server2client) {
  HttpHeader reply = new HttpHeader ();
  reply.setStatusLine ("HTTP/1.0 200 Connection established");
  reply.setHeader ("Proxy-agent", proxy.getServerIdentity ());
 
  HttpHeaderSentListener tc = new TunnelConnected (server2client);
  try {
      HttpHeaderSender sender =
    new HttpHeaderSender (channel, selector, proxy.getLogger (),
View Full Code Here

Examples of rabbit.http.HttpHeader

    private boolean checkVary (Connection con, HttpHeader req,
             Connection.RequestHandler rh) {
  CacheEntry<HttpHeader, HttpHeader> entry = rh.entry;
  if (entry == null)
      return false;
  HttpHeader resp = rh.dataHook;
  List<String> varies = resp.getHeaders ("Vary");
  for (String vary : varies) {
      if (vary.equals ("*")) {
    con.setMayUseCache (false);
    return false;
      } else {
    HttpHeader origreq = entry.getKey ();
    List<String> vals = origreq.getHeaders (vary);
    List<String> nvals = req.getHeaders (vary);
    if (vals.size () != nvals.size ()) {
        return setupRevalidation (con, req, rh);
    } else {
        for (String val : vals) {
View Full Code Here

Examples of rabbit.http.HttpHeader

  if (entry == null)
      return false;
  boolean noCache = false;
  // Only check the response header,
  // request headers with no-cache == refetch.
  HttpHeader resp = rh.dataHook;
  noCache = checkNoCacheHeader (resp.getHeaders ("Cache-Control"));
  if (noCache) {
      return setupRevalidation (con, header, rh);
  }
  return false;
    }
View Full Code Here

Examples of rabbit.http.HttpHeader

               Connection.RequestHandler rh) {
  CacheEntry<HttpHeader, HttpHeader> entry = rh.entry;
  if (entry == null)
      return false;
 
  HttpHeader resp = rh.dataHook;
  for (String ncc : resp.getHeaders ("Cache-Control")) {
      String[] sts = ncc.split (",");
      for (String nc : sts) {
    nc = nc.trim ();
    if (nc.equals ("must-revalidate") ||
        nc.equals ("proxy-revalidate")) {
View Full Code Here

Examples of rabbit.http.HttpHeader

  CacheEntry<HttpHeader, HttpHeader> entry = rh.entry;
  con.setMayUseCache (false);
  String method = req.getMethod ();
  // if we can not filter (noproxy-request) we can not revalidate...
  if (method.equals ("GET") && entry != null && con.getMayFilter ()) {
      HttpHeader resp = rh.dataHook;
      String etag = resp.getHeader ("ETag");
      String lmod = resp.getHeader ("Last-Modified");
      if (etag != null) {
    String inm = req.getHeader ("If-None-Match");
    if (inm == null) {
        req.setHeader ("If-None-Match", etag);
        con.setAddedINM (true);
View Full Code Here

Examples of rabbit.http.HttpHeader

    boolean checkMaxStale (HttpHeader req, Connection.RequestHandler rh) {
  for (String cc : req.getHeaders ("Cache-Control")) {
      cc = cc.trim ();
      if (cc.equals ("max-stale")) {
    if (rh.entry != null) {
        HttpHeader resp = rh.dataHook;
        long maxAge =
      rh.cond.getCacheControlValue (resp, "max-age=");
        if (maxAge >= 0) {
      long now = System.currentTimeMillis ();
      long secs = (now - rh.entry.getCacheTime ()) / 1000;
      long currentAge = secs;
      String age = resp.getHeader ("Age");
      if (age != null)
          currentAge += Long.parseLong (age);
      if (currentAge > maxAge) {
          resp.addHeader ("Warning",
              "110 RabbIT \"Response is stale\"");
      }
        }
    }
    return true;
View Full Code Here

Examples of rabbit.http.HttpHeader

        Connection.RequestHandler rh) {
  if (rh.entry == null)
      return;
  if (rh.webHeader.getStatusCode ().trim ().equals ("304"))
      return;
  HttpHeader cachedWebHeader = rh.dataHook;

  String sd = rh.webHeader.getHeader ("Date");
  String cd = cachedWebHeader.getHeader ("Date");
  if (sd != null && cd != null) {
      Date d1 = HttpDateParser.getDate (sd);
      Date d2 = HttpDateParser.getDate (cd);
      // if we get a response with a date older than we have,
      // we keep our cache.
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.