org.apache.wiki.util
Class HttpUtil

java.lang.Object
  extended by org.apache.wiki.util.HttpUtil

public final class HttpUtil
extends Object

Contains useful utilities for some common HTTP tasks.

Since:
2.1.61.

Method Summary
static boolean checkFor304(javax.servlet.http.HttpServletRequest req, String pageName, Date lastModified)
          If returns true, then should return a 304 (HTTP_NOT_MODIFIED)
static String createETag(String pageName, Date lastModified)
          Creates an ETag based on page information.
static String getRemoteAddress(javax.servlet.http.HttpServletRequest req)
          returns the remote address by looking into x-forwarded-for header or, if unavailable, into ServletRequest.getRemoteAddr().
static String guessValidURI(String uri)
          Attempts to form a valid URI based on the string given.
static String retrieveCookieValue(javax.servlet.http.HttpServletRequest request, String cookieName)
          Attempts to retrieve the given cookie value from the request.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getRemoteAddress

public static String getRemoteAddress(javax.servlet.http.HttpServletRequest req)
returns the remote address by looking into x-forwarded-for header or, if unavailable, into ServletRequest.getRemoteAddr().

Parameters:
req - http request
Returns:
remote address associated to the request.

retrieveCookieValue

public static String retrieveCookieValue(javax.servlet.http.HttpServletRequest request,
                                         String cookieName)
Attempts to retrieve the given cookie value from the request. Returns the string value (which may or may not be decoded correctly, depending on browser!), or null if the cookie is not found. The algorithm will automatically trim leading and trailing double quotes, if found.

Parameters:
request - The current request
cookieName - The name of the cookie to fetch.
Returns:
Value of the cookie, or null, if there is no such cookie.

createETag

public static String createETag(String pageName,
                                Date lastModified)
Creates an ETag based on page information. An ETag is unique to each page and version, so it can be used to check if the page has changed. Do not assume that the ETag is in any particular format.

Parameters:
pageName - The page name for which the ETag should be created.
lastModified - The page last modified date for which the ETag should be created.
Returns:
A String depiction of an ETag.

checkFor304

public static boolean checkFor304(javax.servlet.http.HttpServletRequest req,
                                  String pageName,
                                  Date lastModified)
If returns true, then should return a 304 (HTTP_NOT_MODIFIED)

Parameters:
req - the HTTP request
pageName - the wiki page name to check for
lastModified - the last modified date of the wiki page to check for
Returns:
the result of the check

guessValidURI

public static String guessValidURI(String uri)
Attempts to form a valid URI based on the string given. Currently it can guess email addresses (mailto:). If nothing else is given, it assumes it to be an http:// url.

Parameters:
uri - URI to take a poke at
Returns:
Possibly a valid URI
Since:
2.2.8


Copyright © {inceptionYear}-2014 The Apache Software Foundation. All rights reserved.