Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.cactus
Interface WebRequest

All Superinterfaces:
  Request

All Known Implementing Classes:
  BaseWebRequest

public interface WebRequest
extends Request

Contains HTTP request data for a Cactus test case.

Version:
  $Id: WebRequest.java 238991 2004-05-22 11:34:50Z vmassol $

Field Summary
`static java.lang.String` | `GET_METHOD` GET Method identifier.
`static java.lang.String` | `POST_METHOD` POST Method identifier.

Method Summary
`void` | `addCookie(Cookie theCookie)` Adds a cookie to the request.
`void` | `addCookie(java.lang.String theName, java.lang.String theValue)` Adds a cookie to the request.
`void` | `addCookie(java.lang.String theDomain, java.lang.String theName, java.lang.String theValue)` Adds a cookie to the request.
`void` | `addHeader(java.lang.String theName, java.lang.String theValue)` Adds a header to the request.
`void` | `addParameter(java.lang.String theName, java.lang.String theValue)` Adds a parameter to the request.
`void` | `addParameter(java.lang.String theName, java.lang.String theValue, java.lang.String theMethod)` Adds a parameter to the request.
`Authentication` | `getAuthentication()`
`boolean` | `getAutomaticSession()`
`java.lang.String` | `getContentType()`
`java.util.Vector` | `getCookies()`
`java.lang.String` | `getHeader(java.lang.String theName)` Returns the first value corresponding to this header's name.
`java.util.Enumeration` | `getHeaderNames()`
`java.lang.String[]` | `getHeaderValues(java.lang.String theName)` Returns all the values associated with this header's name.
`java.lang.String` | `getParameterGet(java.lang.String theName)` Returns the first value corresponding to this parameter's name (provided this parameter is passed in the URL).
`java.util.Enumeration` | `getParameterNamesGet()`
`java.util.Enumeration` | `getParameterNamesPost()`
`java.lang.String` | `getParameterPost(java.lang.String theName)` Returns the first value corresponding to this parameter's name (provided this parameter is passed in the request body - POST).
`java.lang.String[]` | `getParameterValuesGet(java.lang.String theName)` Returns all the values corresponding to this parameter's name (provided this parameter is passed in the URL).
`java.lang.String[]` | `getParameterValuesPost(java.lang.String theName)` Returns all the values corresponding to this parameter's name (provided this parameter is passed in the request body - POST).
`java.lang.String` | `getRedirectorName()`
`HttpSessionCookie` | `getSessionCookie()` Gets an HTTP session id by calling the server side and retrieving the jsessionid cookie in the HTTP response.
`ServletURL` | `getURL()`
`java.io.InputStream` | `getUserData()`
`void` | `setAuthentication(Authentication theAuthentication)` Sets the authentication object that will configure the http request
`void` | `setAutomaticSession(boolean isAutomaticSession)`
`void` | `setContentType(java.lang.String theContentType)` Sets the content type that will be set in the http request
`void` | `setRedirectorName(java.lang.String theRedirectorName)` Override the redirector Name defined in `cactus.properties`.
`void` | `setURL(java.lang.String theServerName, java.lang.String theContextPath, java.lang.String theServletPath, java.lang.String thePathInfo, java.lang.String theQueryString)` Sets the simulated URL.
`void` | `setUserData(java.io.InputStream theDataStream)` Allow the user to send arbitrary data in the request body

Field Detail

### GET_METHOD

    public static final java.lang.String GET_METHOD

  GET Method identifier.

  See Also:
    Constant Field Values

### POST_METHOD

    public static final java.lang.String POST_METHOD

  POST Method identifier.

  See Also:
    Constant Field Values

Method Detail

### setContentType

    public void setContentType(java.lang.String theContentType)

  Sets the content type that will be set in the http request

  Parameters:
    `theContentType` - the content type

### getContentType

    public java.lang.String getContentType()

  Returns:
    the content type that will be set in the http request

### setUserData

    public void setUserData(java.io.InputStream theDataStream)

  Allow the user to send arbitrary data in the request body

  Parameters:
    `theDataStream` - the stream on which the data are put by the user

### getUserData

    public java.io.InputStream getUserData()

  Returns:
    the data stream set up by the user

### addParameter

    public void addParameter(java.lang.String theName,
                             java.lang.String theValue,
                             java.lang.String theMethod)

  Adds a parameter to the request. It is possible to add several times the the same parameter name, but with different value (the same as for the `HttpServletRequest`).

  Parameters:
    `theName` - the parameter's name
    `theValue` - the parameter's value
    `theMethod` - GET_METHOD or POST_METHOD. If GET_METHOD then the parameter will be sent in the query string of the URL. If POST_METHOD, it will be sent as a parameter in the request body.

### addParameter

    public void addParameter(java.lang.String theName,
                             java.lang.String theValue)

  Adds a parameter to the request. The parameter is added to the query string of the URL.

  Parameters:
    `theName` - the parameter's name
    `theValue` - the parameter's value
  See Also:
    `addParameter(String, String, String)`

### getParameterNamesPost

    public java.util.Enumeration getParameterNamesPost()

  Returns:
    the parameter names that will be passed in the request body (POST)

### getParameterNamesGet

    public java.util.Enumeration getParameterNamesGet()

  Returns:
    the parameter names that will be passed in the URL (GET)

### getParameterGet

    public java.lang.String getParameterGet(java.lang.String theName)

  Returns the first value corresponding to this parameter's name (provided this parameter is passed in the URL).

  Parameters:
    `theName` - the parameter's name
  Returns:
    the first value corresponding to this parameter's name or null if not found in the list of parameters to be sent in the URL

### getParameterPost

    public java.lang.String getParameterPost(java.lang.String theName)

  Returns the first value corresponding to this parameter's name (provided this parameter is passed in the request body - POST).

  Parameters:
    `theName` - the parameter's name
  Returns:
    the first value corresponding to this parameter's name or null if not found in the list of parameters to be sent in the request body

### getParameterValuesGet

    public java.lang.String[] getParameterValuesGet(java.lang.String theName)

  Returns all the values corresponding to this parameter's name (provided this parameter is passed in the URL).

  Parameters:
    `theName` - the parameter's name
  Returns:
    the first value corresponding to this parameter's name or null if not found in the list of parameters to be sent in the URL

### getParameterValuesPost

    public java.lang.String[] getParameterValuesPost(java.lang.String theName)

  Returns all the values corresponding to this parameter's name (provided this parameter is passed in the request body - POST).

  Parameters:
    `theName` - the parameter's name
  Returns:
    the first value corresponding to this parameter's name or null if not found in the list of parameters to be sent in the request body

### addCookie

    public void addCookie(java.lang.String theName,
                          java.lang.String theValue)

  Adds a cookie to the request. The cookie will be created with a default localhost domain. If you need to specify a domain for the cookie, use the `addCookie(String, String, String)` method or the method `addCookie(Cookie)`.

  Parameters:
    `theName` - the cookie's name
    `theValue` - the cookie's value

### addCookie

    public void addCookie(java.lang.String theDomain,
                          java.lang.String theName,
                          java.lang.String theValue)

  Adds a cookie to the request. The cookie will be created with the domain passed as parameter (i.e. the cookie will get sent only to requests to that domain). Note that the domain must match either the redirector host (specified in `cactus.properties`) or the host set using `setURL()`.

  Parameters:
    `theDomain` - the cookie domain
    `theName` - the cookie name
    `theValue` - the cookie value

### addCookie

    public void addCookie(Cookie theCookie)

  Adds a cookie to the request. Note that the domain must match either the redirector host (specified in `cactus.properties`) or the host set using `setURL()`.

  Parameters:
    `theCookie` - the cookie to add

### getCookies

    public java.util.Vector getCookies()

  Returns:
    the cookies (vector of `Cookie` objects)

### addHeader

    public void addHeader(java.lang.String theName,
                          java.lang.String theValue)

  Adds a header to the request. Supports adding several values for the same header name.

  Parameters:
    `theName` - the header's name
    `theValue` - the header's value

### getHeaderNames

    public java.util.Enumeration getHeaderNames()

  Returns:
    the header names

### getHeader

    public java.lang.String getHeader(java.lang.String theName)

  Returns the first value corresponding to this header's name.

  Parameters:
    `theName` - the header's name
  Returns:
    the first value corresponding to this header's name or null if not found

### getHeaderValues

    public java.lang.String[] getHeaderValues(java.lang.String theName)

  Returns all the values associated with this header's name.

  Parameters:
    `theName` - the header's name
  Returns:
    the values corresponding to this header's name or null if not found

### setAuthentication

    public void setAuthentication(Authentication theAuthentication)

  Sets the authentication object that will configure the http request

  Parameters:
    `theAuthentication` - the authentication object

### getAuthentication

    public Authentication getAuthentication()

  Returns:
    the authentication that will configure the http request

### setRedirectorName

    public void setRedirectorName(java.lang.String theRedirectorName)

  Override the redirector Name defined in `cactus.properties`. This is useful to define a per test case Name (for example, if some test case need to have authentication turned on and not other tests, etc).

  Parameters:
    `theRedirectorName` - the new redirector Name to use

### getRedirectorName

    public java.lang.String getRedirectorName()

  Returns:
    the overriden redirector Name or null if none has been defined

### setAutomaticSession

    public void setAutomaticSession(boolean isAutomaticSession)

  Parameters:
    `isAutomaticSession` - whether the redirector servlet will automatically create the HTTP session or not. Default is true.

### getAutomaticSession

    public boolean getAutomaticSession()

  Returns:
    true if session will be automatically created for the user or false otherwise.

### setURL

    public void setURL(java.lang.String theServerName,
                       java.lang.String theContextPath,
                       java.lang.String theServletPath,
                       java.lang.String thePathInfo,
                       java.lang.String theQueryString)

  Sets the simulated URL. A URL is of the form :
  `

       URL = "http://" + serverName (including port) + requestURI ? queryString

      requestURI = contextPath + servletPath + pathInfo

  ` From the Servlet 2.2 specification :
  `

       Context Path: The path prefix associated with the
         ServletContext that this servlet is a part of. If this context is the
         default context rooted at the base of the web server's URL namespace,
         this path will be an empty string. Otherwise, this path starts with a
         character but does not end with a character.
       Servlet Path: The path section that directly corresponds to
         the mapping which activated this request. This path starts with a
         character.
       PathInfo: The part of the request path that is not part of the
         Context Path or the Servlet Path.

  `

  Parameters:
    `theServerName` - the server name (and port) in the URL to simulate, i.e. this is the name that will be returned by the `HttpServletRequest.getServerName()` and `HttpServletRequest.getServerPort()`.
    `theContextPath` - the webapp context path in the URL to simulate, i.e. this is the name that will be returned by the `HttpServletRequest.getContextPath()`. Can be null. Format: "/" + name or an empty string for the default context.
    `theServletPath` - the servlet path in the URL to simulate, i.e. this is the name that will be returned by the `HttpServletRequest.getServletPath()`. Can be null. Format : "/" + name.
    `thePathInfo` - the path info in the URL to simulate, i.e. this is the name that will be returned by the `HttpServletRequest.getPathInfo()`. Can be null. Format : "/" + name.
    `theQueryString` - the Query string in the URL to simulate, i.e. this is the string that will be returned by the `HttpServletResquest.getQueryString()`. Can be null.

### getURL

    public ServletURL getURL()

  Returns:
    the simulated URL

### getSessionCookie

    public HttpSessionCookie getSessionCookie()

  Gets an HTTP session id by calling the server side and retrieving the jsessionid cookie in the HTTP response. This is achieved by calling the Cactus redirector used by the current test case.

  Returns:
    the HTTP session id as a `HttpSessionCookie` object

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2004 Apache Software Foundation. All Rights Reserved.