org.apache.cocoon.environment.portlet
Class PortletEnvironment

java.lang.Object
  extended byorg.apache.avalon.framework.logger.AbstractLogEnabled
      extended byorg.apache.cocoon.environment.AbstractEnvironment
          extended byorg.apache.cocoon.environment.portlet.PortletEnvironment
All Implemented Interfaces:
Environment, LogEnabled

public class PortletEnvironment
extends AbstractEnvironment

Implements Environment interface for the JSR-168 Portlet environment.

Version:
$Id: PortletEnvironment.java 326051 2005-10-18 08:19:11Z cziegeler $

Field Summary
static String HEADER_PORTLET_MODE
          This header can be read from any portlet request, and can be set on action response.
static String HEADER_PORTLET_TITLE
          This header can be set only, and only on render response.
static String HEADER_WINDOW_STATE
          This header can be read from any portlet request, and can be set on action response.
static String PARAMETER_PATH_INFO
          As portlets do not have a pathInfo in the request, we can simulate this by passing a parameter.
static String SESSION_APPLICATION_SCOPE
          This is the prefix for application scope session attributes.
static String SESSION_PORTLET_SCOPE
          This is the prefix for portlet scope session attributes.
 
Fields inherited from class org.apache.cocoon.environment.AbstractEnvironment
action, objectModel, outputStream, prefix, secureOutputStream, uri, view
 
Constructor Summary
PortletEnvironment(String servletPath, String pathInfo, String uri, javax.portlet.ActionRequest request, javax.portlet.ActionResponse response, javax.portlet.PortletContext portletContext, Context context, String containerEncoding, String defaultFormEncoding, int defaultSessionScope)
          Constructs a PortletEnvironment object from a PortletRequest and PortletResponse objects
PortletEnvironment(String servletPath, String pathInfo, String uri, javax.portlet.RenderRequest request, javax.portlet.RenderResponse response, javax.portlet.PortletContext portletContext, Context context, String containerEncoding, String defaultFormEncoding, int defaultSessionScope)
          Constructs a PortletEnvironment object from a PortletRequest and PortletResponse objects
 
Method Summary
 String getContentType()
          Get the ContentType
 OutputStream getOutputStream(int bufferSize)
          Get the output stream where to write the generated resource.
 boolean isExternal()
          Always return true.
 boolean isResponseModified(long lastModified)
          This method always returns true because portlet environment does not support response codes.
 void redirect(String newURL, boolean global, boolean permanent)
          Redirect to the given URL
 void setContentLength(int length)
          Portlet environment does not support response content length.
 void setContentType(String contentType)
          Set the ContentType
 void setResponseIsNotModified()
          Portlet environment does not support response status code.
 void setStatus(int statusCode)
          Portlet environment does not support response status code.
 boolean tryResetResponse()
          Reset the response if possible.
 
Methods inherited from class org.apache.cocoon.environment.AbstractEnvironment
commitResponse, extractAction, extractView, finishingProcessing, getAction, getAttribute, getAttributeNames, getObjectModel, getURI, getURIPrefix, getView, isInternalRedirect, removeAttribute, setAction, setAttribute, setURI, setView, startingProcessing
 
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PARAMETER_PATH_INFO

public static final String PARAMETER_PATH_INFO
As portlets do not have a pathInfo in the request, we can simulate this by passing a parameter. If parameter is null, this will translate to the absent pathInfo, and portlets will be matched in the sitemap using only servletPath.

See Also:
Constant Field Values

HEADER_PORTLET_MODE

public static final String HEADER_PORTLET_MODE
This header can be read from any portlet request, and can be set on action response.

See Also:
Constant Field Values

HEADER_WINDOW_STATE

public static final String HEADER_WINDOW_STATE
This header can be read from any portlet request, and can be set on action response.

See Also:
Constant Field Values

HEADER_PORTLET_TITLE

public static final String HEADER_PORTLET_TITLE
This header can be set only, and only on render response.

See Also:
Constant Field Values

SESSION_APPLICATION_SCOPE

public static final String SESSION_APPLICATION_SCOPE
This is the prefix for application scope session attributes.

See Also:
Constant Field Values

SESSION_PORTLET_SCOPE

public static final String SESSION_PORTLET_SCOPE
This is the prefix for portlet scope session attributes.

See Also:
Constant Field Values
Constructor Detail

PortletEnvironment

public PortletEnvironment(String servletPath,
                          String pathInfo,
                          String uri,
                          javax.portlet.ActionRequest request,
                          javax.portlet.ActionResponse response,
                          javax.portlet.PortletContext portletContext,
                          Context context,
                          String containerEncoding,
                          String defaultFormEncoding,
                          int defaultSessionScope)
                   throws IOException
Constructs a PortletEnvironment object from a PortletRequest and PortletResponse objects


PortletEnvironment

public PortletEnvironment(String servletPath,
                          String pathInfo,
                          String uri,
                          javax.portlet.RenderRequest request,
                          javax.portlet.RenderResponse response,
                          javax.portlet.PortletContext portletContext,
                          Context context,
                          String containerEncoding,
                          String defaultFormEncoding,
                          int defaultSessionScope)
                   throws IOException
Constructs a PortletEnvironment object from a PortletRequest and PortletResponse objects

Method Detail

redirect

public void redirect(String newURL,
                     boolean global,
                     boolean permanent)
              throws IOException
Description copied from interface: Environment
Redirect to the given URL

Throws:
IOException

setStatus

public void setStatus(int statusCode)
Portlet environment does not support response status code.

Specified by:
setStatus in interface Environment
Overrides:
setStatus in class AbstractEnvironment

setContentType

public void setContentType(String contentType)
Set the ContentType


getContentType

public String getContentType()
Get the ContentType


setContentLength

public void setContentLength(int length)
Portlet environment does not support response content length. This method does nothing.


isResponseModified

public boolean isResponseModified(long lastModified)
This method always returns true because portlet environment does not support response codes.

Specified by:
isResponseModified in interface Environment
Overrides:
isResponseModified in class AbstractEnvironment

setResponseIsNotModified

public void setResponseIsNotModified()
Portlet environment does not support response status code. This method does nothing.

Specified by:
setResponseIsNotModified in interface Environment
Overrides:
setResponseIsNotModified in class AbstractEnvironment

tryResetResponse

public boolean tryResetResponse()
                         throws IOException
Reset the response if possible. This allows error handlers to have a higher chance to produce clean output if the pipeline that raised the error has already output some data.

Specified by:
tryResetResponse in interface Environment
Overrides:
tryResetResponse in class AbstractEnvironment
Returns:
true if the response was successfully reset
Throws:
IOException

getOutputStream

public OutputStream getOutputStream(int bufferSize)
                             throws IOException
Get the output stream where to write the generated resource. The returned stream is buffered by the environment. If the buffer size is -1 then the complete output is buffered. If the buffer size is 0, no buffering takes place.

Specified by:
getOutputStream in interface Environment
Overrides:
getOutputStream in class AbstractEnvironment
Throws:
IOException

isExternal

public boolean isExternal()
Always return true.

Returns:
true if this environment is external


Copyright ? 1999-2005 The Apache Software Foundation. All Rights Reserved.