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

## org.jboss.portal.portlet.impl.jsr168.api
Class PortletRequestImpl

    java.lang.Object
      org.jboss.portal.portlet.impl.jsr168.api.PortletRequestImpl

All Implemented Interfaces:
  PortletRequest

Direct Known Subclasses:
  ActionRequestImpl, RenderRequestImpl

    public abstract class PortletRequestImpl

extends java.lang.Object
implements PortletRequest

PortletRequest implemention. The parameter implementation is left to subclasses that can implement it differently.

Version:
  $Revision: 7226 $
Author:
  Julien Viet, Boleslaw Dawidowicz

Field Summary
`protected PortletRequestAttributes` | `attributes` .
`protected PortletContainerImpl` | `container`
`protected javax.servlet.http.HttpServletRequest` | `dreq`
`protected PortletInvocation` | `invocation`
`protected static org.apache.log4j.Logger` | `log`
`protected PortletParameters` | `parameters` .
`protected PortalContext` | `portalContext`
`protected PortletPreferences` | `preferences`
`protected PortletSessionImpl` | `psession`
`protected RequestContext` | `requestContext`
`protected SecurityContext` | `securityContext`
`protected int` | `sessionStatus`
`protected UserContext` | `userContext`
`protected WindowContext` | `windowContext`

Fields inherited from interface javax.portlet.PortletRequest
`BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH, USER_INFO`

Constructor Summary
`PortletRequestImpl(PortletInvocation invocation)`

Method Summary
`java.lang.Object` | `getAttribute(java.lang.String name)` Returns the value of the named attribute as an `Object`, or `null` if no attribute of the given name exists.
`java.util.Enumeration` | `getAttributeNames()` Returns an `Enumeration` containing the names of the attributes available to this request.
`PortletRequestAttributes` | `getAttributes()`
`java.lang.String` | `getAuthType()` Returns the name of the authentication scheme used for the connection between client and portal, for example, `BASIC_AUTH`, `CLIENT_CERT_AUTH`, a custom one or `null` if there was no authentication.
`java.lang.String` | `getContextPath()` Returns the context path which is the path prefix associated with the deployed portlet application.
`java.util.Locale` | `getLocale()` Returns the preferred Locale in which the portal will accept content.
`java.util.Enumeration` | `getLocales()` Returns an Enumeration of Locale objects indicating, in decreasing order starting with the preferred locale in which the portal will accept content for this request.
`java.lang.String` | `getParameter(java.lang.String name)` Returns the value of a request parameter as a `String`, or `null` if the parameter does not exist.
`java.util.Map` | `getParameterMap()` Returns a `Map` of the parameters of this request.
`java.util.Enumeration` | `getParameterNames()` Returns an `Enumeration` of `String` objects containing the names of the parameters contained in this request.
`java.lang.String[]` | `getParameterValues(java.lang.String name)` Returns an array of `String` objects containing all of the values the given request parameter has, or `null` if the parameter does not exist.
`PortalContext` | `getPortalContext()` Returns the context of the calling portal.
`PortletMode` | `getPortletMode()` Returns the current portlet mode of the portlet.
`PortletSession` | `getPortletSession()` Returns the current portlet session or, if there is no current session, creates one and returns the new session.
`PortletSession` | `getPortletSession(boolean create)` Returns the current portlet session or, if there is no current session and the given flag is `true`, creates one and returns the new session.
`PortletPreferences` | `getPreferences()` Returns the preferences object associated with the portlet.
`java.util.Enumeration` | `getProperties(java.lang.String name)` Returns all the values of the specified request property as a `Enumeration` of `String` objects.
`java.lang.String` | `getProperty(java.lang.String name)` Returns the value of the specified request property as a `String`.
`java.util.Enumeration` | `getPropertyNames()` Returns a `Enumeration` of all the property names this request contains.
`java.lang.String` | `getRemoteUser()` Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.
`java.lang.String` | `getRequestedSessionId()` Returns the session ID indicated in the client request.
`java.lang.String` | `getResponseContentType()` Returns the portal preferred content type for the response.
`java.util.Enumeration` | `getResponseContentTypes()` Gets a list of content types which the portal accepts for the response.
`java.lang.String` | `getScheme()` Returns the name of the scheme used to make this request.
`java.lang.String` | `getServerName()` Returns the host name of the server that received the request.
`int` | `getServerPort()` Returns the port number on which this request was received.
`java.security.Principal` | `getUserPrincipal()` Returns a java.security.Principal object containing the name of the current authenticated user.
`WindowState` | `getWindowState()` Returns the current window state of the portlet.
`boolean` | `isPortletModeAllowed(PortletMode portletMode)` Returns true, if the given portlet mode is a valid one to set for this portlet in the context of the current request.
`boolean` | `isRequestedSessionIdValid()` Checks whether the requested session ID is still valid.
`boolean` | `isSecure()` Returns a boolean indicating whether this request was made using a secure channel between client and the portal, such as HTTPS.
`boolean` | `isUserInRole(java.lang.String roleName)` Returns a boolean indicating whether the authenticated user is included in the specified logical "role".
`boolean` | `isWindowStateAllowed(WindowState windowState)` Returns true, if the given window state is valid to be set for this portlet in the context of the current request.
`void` | `removeAttribute(java.lang.String name)` Removes an attribute from this request.
`void` | `setAttribute(java.lang.String name, java.lang.Object value)` Stores an attribute in this request.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### log

    protected static final org.apache.log4j.Logger log

### invocation

    protected PortletInvocation invocation

### userContext

    protected UserContext userContext

### securityContext

    protected SecurityContext securityContext

### requestContext

    protected RequestContext requestContext

### windowContext

    protected WindowContext windowContext

### preferences

    protected PortletPreferences preferences

### container

    protected PortletContainerImpl container

### dreq

    protected javax.servlet.http.HttpServletRequest dreq

### portalContext

    protected PortalContext portalContext

### psession

    protected PortletSessionImpl psession

### sessionStatus

    protected int sessionStatus

### parameters

    protected PortletParameters parameters

  .

### attributes

    protected final PortletRequestAttributes attributes

  .

Constructor Detail

### PortletRequestImpl

    public PortletRequestImpl(PortletInvocation invocation)

Method Detail

### getParameter

    public java.lang.String getParameter(java.lang.String name)

  Description copied from interface: `PortletRequest`
  Returns the value of a request parameter as a `String`, or `null` if the parameter does not exist. Request parameters are extra information sent with the request. The returned parameter are "x-www-form-urlencoded" decoded.

  Only parameters targeted to the current portlet are accessible.

  This method should only be used if the parameter has only one value. If the parameter might have more than one value, use `PortletRequest.getParameterValues(java.lang.String)`.

  If this method is used with a multivalued parameter, the value returned is equal to the first value in the array returned by `getParameterValues`.

  Specified by:
    `getParameter` in interface `PortletRequest`
  Parameters:
    `name` - a `String` specifying the name of the parameter
  Returns:
    a `String` representing the single value of the parameter
  See Also:
    `PortletRequest.getParameterValues(java.lang.String)`

### getParameterNames

    public java.util.Enumeration getParameterNames()

  Description copied from interface: `PortletRequest`
  Returns an `Enumeration` of `String` objects containing the names of the parameters contained in this request. If the request has no parameters, the method returns an empty `Enumeration`.

  Only parameters targeted to the current portlet are returned.

  Specified by:
    `getParameterNames` in interface `PortletRequest`
  Returns:
    an `Enumeration` of `String` objects, each `String` containing the name of a request parameter; or an empty `Enumeration` if the request has no parameters.

### getParameterValues

    public java.lang.String[] getParameterValues(java.lang.String name)

  Description copied from interface: `PortletRequest`
  Returns an array of `String` objects containing all of the values the given request parameter has, or `null` if the parameter does not exist. The returned parameters are "x-www-form-urlencoded" decoded.

  If the parameter has a single value, the array has a length of 1.

  Specified by:
    `getParameterValues` in interface `PortletRequest`
  Parameters:
    `name` - a `String` containing the name of the parameter the value of which is requested
  Returns:
    an array of `String` objects containing the parameter values.
  See Also:
    `PortletRequest.getParameter(java.lang.String)`

### getParameterMap

    public java.util.Map getParameterMap()

  Description copied from interface: `PortletRequest`
  Returns a `Map` of the parameters of this request. Request parameters are extra information sent with the request. The returned parameters are "x-www-form-urlencoded" decoded.

  The values in the returned `Map` are from type String array (`String[]`).

  If no parameters exist this method returns an empty `Map`.

  Specified by:
    `getParameterMap` in interface `PortletRequest`
  Returns:
    an immutable `Map` containing parameter names as keys and parameter values as map values, or an empty `Map` if no parameters exist. The keys in the parameter map are of type String. The values in the parameter map are of type String array (`String[]`).

### getWindowState

    public WindowState getWindowState()

  Description copied from interface: `PortletRequest`
  Returns the current window state of the portlet.

  Specified by:
    `getWindowState` in interface `PortletRequest`
  Returns:
    the window state

### getPortletMode

    public PortletMode getPortletMode()

  Description copied from interface: `PortletRequest`
  Returns the current portlet mode of the portlet.

  Specified by:
    `getPortletMode` in interface `PortletRequest`
  Returns:
    the portlet mode

### getAttribute

    public java.lang.Object getAttribute(java.lang.String name)
                                  throws java.lang.IllegalArgumentException

  Description copied from interface: `PortletRequest`
  Returns the value of the named attribute as an `Object`, or `null` if no attribute of the given name exists.

  Attribute names should follow the same conventions as package names. This specification reserves names matching `java.*`, and `javax.*`.

  In a distributed portlet web application the `Object` needs to be serializable.

  Specified by:
    `getAttribute` in interface `PortletRequest`
  Parameters:
    `name` - a `String` specifying the name of the attribute
  Returns:
    an `Object` containing the value of the attribute, or `null` if the attribute does not exist.
  Throws:
    `java.lang.IllegalArgumentException` - if name is `null`.

### getAttributeNames

    public java.util.Enumeration getAttributeNames()

  Description copied from interface: `PortletRequest`
  Returns an `Enumeration` containing the names of the attributes available to this request. This method returns an empty `Enumeration` if the request has no attributes available to it.

  Specified by:
    `getAttributeNames` in interface `PortletRequest`
  Returns:
    an `Enumeration` of strings containing the names of the request attributes, or an empty `Enumeration` if the request has no attributes available to it.

### setAttribute

    public void setAttribute(java.lang.String name,
                             java.lang.Object value)

  Description copied from interface: `PortletRequest`
  Stores an attribute in this request.

  Attribute names should follow the same conventions as package names. Names beginning with `java.*`, `javax.*`, and `com.sun.*` are reserved for use by Sun Microsystems.
  If the value passed into this method is `null`, the effect is the same as calling `PortletRequest.removeAttribute(java.lang.String)`.

  Specified by:
    `setAttribute` in interface `PortletRequest`
  Parameters:
    `name` - a `String` specifying the name of the attribute
    `value` - the `Object` to be stored

### removeAttribute

    public void removeAttribute(java.lang.String name)

  Description copied from interface: `PortletRequest`
  Removes an attribute from this request. This method is not generally needed, as attributes only persist as long as the request is being handled.

  Attribute names should follow the same conventions as package names. Names beginning with `java.*`, `javax.*`, and `com.sun.*` are reserved for use by Sun Microsystems.

  Specified by:
    `removeAttribute` in interface `PortletRequest`
  Parameters:
    `name` - a `String` specifying the name of the attribute to be removed

### getProperty

    public java.lang.String getProperty(java.lang.String name)

  Description copied from interface: `PortletRequest`
  Returns the value of the specified request property as a `String`. If the request did not include a property of the specified name, this method returns `null`.

  A portlet can access portal/portlet-container specific properties through this method and, if available, the headers of the HTTP client request.

  This method should only be used if the property has only one value. If the property might have more than one value, use `PortletRequest.getProperties(java.lang.String)`.

  If this method is used with a multivalued parameter, the value returned is equal to the first value in the Enumeration returned by `getProperties`.

  Specified by:
    `getProperty` in interface `PortletRequest`
  Parameters:
    `name` - a `String` specifying the property name
  Returns:
    a `String` containing the value of the requested property, or `null` if the request does not have a property of that name.

### getProperties

    public java.util.Enumeration getProperties(java.lang.String name)

  Description copied from interface: `PortletRequest`
  Returns all the values of the specified request property as a `Enumeration` of `String` objects.

  If the request did not include any propertys of the specified name, this method returns an empty `Enumeration`. The property name is case insensitive. You can use this method with any request property.

  Specified by:
    `getProperties` in interface `PortletRequest`
  Parameters:
    `name` - a `String` specifying the property name
  Returns:
    a `Enumeration` containing the values of the requested property. If the request does not have any properties of that name return an empty `Enumeration`.

### getPropertyNames

    public java.util.Enumeration getPropertyNames()

  Description copied from interface: `PortletRequest`
  Returns a `Enumeration` of all the property names this request contains. If the request has no properties, this method returns an empty `Enumeration`.

  Specified by:
    `getPropertyNames` in interface `PortletRequest`
  Returns:
    an `Enumeration` of all the property names sent with this request; if the request has no properties, an empty `Enumeration`.

### getContextPath

    public java.lang.String getContextPath()

  Description copied from interface: `PortletRequest`
  Returns the context path which is the path prefix associated with the deployed portlet application. If the portlet application is rooted at the base of the web server URL namespace (also known as "default" context), this path must be an empty string. Otherwise, it must be the path the portlet application is rooted to, the path must start with a '/' and it must not end with a '/' character.

  To encode a URL the `PortletResponse.encodeURL(java.lang.String)` method must be used.

  Specified by:
    `getContextPath` in interface `PortletRequest`
  Returns:
    a `String` specifying the portion of the request URL that indicates the context of the request
  See Also:
    `PortletResponse.encodeURL(java.lang.String)`

### getAuthType

    public java.lang.String getAuthType()

  Description copied from interface: `PortletRequest`
  Returns the name of the authentication scheme used for the connection between client and portal, for example, `BASIC_AUTH`, `CLIENT_CERT_AUTH`, a custom one or `null` if there was no authentication.

  Specified by:
    `getAuthType` in interface `PortletRequest`
  Returns:
    one of the static members `BASIC_AUTH`, `FORM_AUTH`, `CLIENT_CERT_AUTH`, `DIGEST_AUTH` (suitable for == comparison) indicating the authentication scheme, a custom one, or `null` if the request was not authenticated.

### getRemoteUser

    public java.lang.String getRemoteUser()

  Description copied from interface: `PortletRequest`
  Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.

  Specified by:
    `getRemoteUser` in interface `PortletRequest`
  Returns:
    a `String` specifying the login of the user making this request, or `null` if the user login is not known.

### getUserPrincipal

    public java.security.Principal getUserPrincipal()

  Description copied from interface: `PortletRequest`
  Returns a java.security.Principal object containing the name of the current authenticated user.

  Specified by:
    `getUserPrincipal` in interface `PortletRequest`
  Returns:
    a `java.security.Principal` containing the name of the user making this request, or `null` if the user has not been authenticated.

### isUserInRole

    public boolean isUserInRole(java.lang.String roleName)

  Description copied from interface: `PortletRequest`
  Returns a boolean indicating whether the authenticated user is included in the specified logical "role". Roles and role membership can be defined using deployment descriptors. If the user has not been authenticated, the method returns `false`.

  Specified by:
    `isUserInRole` in interface `PortletRequest`
  Parameters:
    `roleName` - a `String` specifying the name of the role
  Returns:
    a `boolean` indicating whether the user making this request belongs to a given role; `false` if the user has not been authenticated.

### isSecure

    public boolean isSecure()

  Description copied from interface: `PortletRequest`
  Returns a boolean indicating whether this request was made using a secure channel between client and the portal, such as HTTPS.

  Specified by:
    `isSecure` in interface `PortletRequest`
  Returns:
    true, if the request was made using a secure channel.

### getResponseContentType

    public java.lang.String getResponseContentType()

  Description copied from interface: `PortletRequest`
  Returns the portal preferred content type for the response.

  The content type only includes the MIME type, not the character set.

  Only content types that the portlet has defined in its deployment descriptor are valid return values for this method call. If the portlet has defined `'*'` or `'* / *'` as supported content types, these may also be valid return values.

  Specified by:
    `getResponseContentType` in interface `PortletRequest`
  Returns:
    preferred MIME type of the response

### getResponseContentTypes

    public java.util.Enumeration getResponseContentTypes()

  Description copied from interface: `PortletRequest`
  Gets a list of content types which the portal accepts for the response. This list is ordered with the most preferable types listed first.

  The content type only includes the MIME type, not the character set.

  Only content types that the portlet has defined in its deployment descriptor are valid return values for this method call. If the portlet has defined `'*'` or `'* / *'` as supported content types, these may also be valid return values.

  Specified by:
    `getResponseContentTypes` in interface `PortletRequest`
  Returns:
    ordered list of MIME types for the response

### getLocale

    public java.util.Locale getLocale()

  Description copied from interface: `PortletRequest`
  Returns the preferred Locale in which the portal will accept content. The Locale may be based on the Accept-Language header of the client.

  Specified by:
    `getLocale` in interface `PortletRequest`
  Returns:
    the prefered Locale in which the portal will accept content.

### isPortletModeAllowed

    public boolean isPortletModeAllowed(PortletMode portletMode)

  Description copied from interface: `PortletRequest`
  Returns true, if the given portlet mode is a valid one to set for this portlet in the context of the current request.

  Specified by:
    `isPortletModeAllowed` in interface `PortletRequest`
  Parameters:
    `portletMode` - portlet mode to check
  Returns:
    true, if it is valid for this portlet in this request to change to the given portlet mode

### isWindowStateAllowed

    public boolean isWindowStateAllowed(WindowState windowState)

  Description copied from interface: `PortletRequest`
  Returns true, if the given window state is valid to be set for this portlet in the context of the current request.

  Specified by:
    `isWindowStateAllowed` in interface `PortletRequest`
  Parameters:
    `windowState` - window state to checked
  Returns:
    true, if it is valid for this portlet in this request to change to the given window state

### getPortletSession

    public PortletSession getPortletSession()

  Description copied from interface: `PortletRequest`
  Returns the current portlet session or, if there is no current session, creates one and returns the new session.

  Creating a new portlet session will result in creating a new `HttpSession` on which the portlet session is based on.

  Specified by:
    `getPortletSession` in interface `PortletRequest`
  Returns:
    the portlet session

### getPortletSession

    public PortletSession getPortletSession(boolean create)

  Description copied from interface: `PortletRequest`
  Returns the current portlet session or, if there is no current session and the given flag is `true`, creates one and returns the new session.

  If the given flag is `false` and there is no current portlet session, this method returns `null`.

  Creating a new portlet session will result in creating a new `HttpSession` on which the portlet session is based on.

  Specified by:
    `getPortletSession` in interface `PortletRequest`
  Parameters:
    `create` - `true` to create a new session,
    `false` to return `null` if there is no current session
  Returns:
    the portlet session

### getPortalContext

    public PortalContext getPortalContext()

  Description copied from interface: `PortletRequest`
  Returns the context of the calling portal.

  Specified by:
    `getPortalContext` in interface `PortletRequest`
  Returns:
    the context of the calling portal

### getRequestedSessionId

    public java.lang.String getRequestedSessionId()

  Description copied from interface: `PortletRequest`
  Returns the session ID indicated in the client request. This session ID may not be a valid one, it may be an old one that has expired or has been invalidated. If the client request did not specify a session ID, this method returns `null`.

  Specified by:
    `getRequestedSessionId` in interface `PortletRequest`
  Returns:
    a `String` specifying the session ID, or `null` if the request did not specify a session ID
  See Also:
    `PortletRequest.isRequestedSessionIdValid()`

### isRequestedSessionIdValid

    public boolean isRequestedSessionIdValid()

  Description copied from interface: `PortletRequest`
  Checks whether the requested session ID is still valid.

  Specified by:
    `isRequestedSessionIdValid` in interface `PortletRequest`
  Returns:
    `true` if this request has an id for a valid session in the current session context; `false` otherwise
  See Also:
    `PortletRequest.getRequestedSessionId()`, `PortletRequest.getPortletSession()`

### getLocales

    public java.util.Enumeration getLocales()

  Description copied from interface: `PortletRequest`
  Returns an Enumeration of Locale objects indicating, in decreasing order starting with the preferred locale in which the portal will accept content for this request. The Locales may be based on the Accept-Language header of the client.

  Specified by:
    `getLocales` in interface `PortletRequest`
  Returns:
    an Enumeration of Locales, in decreasing order, in which the portal will accept content for this request

### getScheme

    public java.lang.String getScheme()

  Description copied from interface: `PortletRequest`
  Returns the name of the scheme used to make this request. For example, `http`, `https`, or `ftp`. Different schemes have different rules for constructing URLs, as noted in RFC 1738.

  Specified by:
    `getScheme` in interface `PortletRequest`
  Returns:
    a `String` containing the name of the scheme used to make this request

### getServerName

    public java.lang.String getServerName()

  Description copied from interface: `PortletRequest`
  Returns the host name of the server that received the request.

  Specified by:
    `getServerName` in interface `PortletRequest`
  Returns:
    a `String` containing the name of the server to which the request was sent

### getServerPort

    public int getServerPort()

  Description copied from interface: `PortletRequest`
  Returns the port number on which this request was received.

  Specified by:
    `getServerPort` in interface `PortletRequest`
  Returns:
    an integer specifying the port number

### getPreferences

    public PortletPreferences getPreferences()

  Description copied from interface: `PortletRequest`
  Returns the preferences object associated with the portlet.

  Specified by:
    `getPreferences` in interface `PortletRequest`
  Returns:
    the portlet preferences

### getAttributes

    public PortletRequestAttributes getAttributes()

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