org.apache.cocoon.environment.wrapper
Class MutableEnvironmentFacade

java.lang.Object
  extended byorg.apache.cocoon.environment.wrapper.MutableEnvironmentFacade
All Implemented Interfaces:
org.apache.cocoon.environment.Environment

public class MutableEnvironmentFacade
extends Object
implements org.apache.cocoon.environment.Environment

Enviroment facade, whose delegate object can be changed. This class is required to handle internal redirects in sitemap sources ("cocoon:"). This is because org.apache.cocoon.components.source.impl.SitemapSource keeps the environment in which the internal request should be processed. But internal redirects create a new processing environment and there's no way to change the one held by the SitemapSource. So the processing of internal redirects actually changes the delegate of this class, transparently for the SitemapSource.

Version:
$Id: MutableEnvironmentFacade.html 1304280 2012-03-23 11:18:01Z ilgrosso $
See Also:
org.apache.cocoon.components.source.impl.SitemapSource

Constructor Summary
MutableEnvironmentFacade(EnvironmentWrapper env)
           
 
Method Summary
 void commitResponse()
           
 void finishingProcessing()
           
 String getAction()
           
 Object getAttribute(String name)
           
 Enumeration getAttributeNames()
           
 String getContentType()
           
 EnvironmentWrapper getDelegate()
           
 Map getObjectModel()
           
 OutputStream getOutputStream(int bufferSize)
           
 String getRedirectURL()
           
 String getURI()
           
 String getURIPrefix()
           
 String getView()
           
 boolean isExternal()
           
 boolean isInternalRedirect()
           
 boolean isResponseModified(long lastModified)
           
 void redirect(String url, boolean global, boolean permanent)
           
 void removeAttribute(String name)
           
 void reset()
           
 void setAttribute(String name, Object value)
           
 void setContentLength(int length)
           
 void setContentType(String mimeType)
           
 void setDelegate(EnvironmentWrapper env)
           
 void setOutputStream(OutputStream os)
           
 void setResponseIsNotModified()
           
 void setStatus(int statusCode)
           
 void setURI(String prefix, String uri)
           
 void startingProcessing()
           
 boolean tryResetResponse()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MutableEnvironmentFacade

public MutableEnvironmentFacade(EnvironmentWrapper env)
Method Detail

getDelegate

public EnvironmentWrapper getDelegate()

setDelegate

public void setDelegate(EnvironmentWrapper env)

setURI

public void setURI(String prefix,
                   String uri)
Specified by:
setURI in interface org.apache.cocoon.environment.Environment

setOutputStream

public void setOutputStream(OutputStream os)

getRedirectURL

public String getRedirectURL()

getURI

public String getURI()
Specified by:
getURI in interface org.apache.cocoon.environment.Environment

getURIPrefix

public String getURIPrefix()
Specified by:
getURIPrefix in interface org.apache.cocoon.environment.Environment

getView

public String getView()
Specified by:
getView in interface org.apache.cocoon.environment.Environment

getAction

public String getAction()
Specified by:
getAction in interface org.apache.cocoon.environment.Environment

redirect

public void redirect(String url,
                     boolean global,
                     boolean permanent)
              throws IOException
Specified by:
redirect in interface org.apache.cocoon.environment.Environment
Throws:
IOException

setContentType

public void setContentType(String mimeType)
Specified by:
setContentType in interface org.apache.cocoon.environment.Environment

getContentType

public String getContentType()
Specified by:
getContentType in interface org.apache.cocoon.environment.Environment

setContentLength

public void setContentLength(int length)
Specified by:
setContentLength in interface org.apache.cocoon.environment.Environment

setStatus

public void setStatus(int statusCode)
Specified by:
setStatus in interface org.apache.cocoon.environment.Environment

getOutputStream

public OutputStream getOutputStream(int bufferSize)
                             throws IOException
Specified by:
getOutputStream in interface org.apache.cocoon.environment.Environment
Throws:
IOException

getObjectModel

public Map getObjectModel()
Specified by:
getObjectModel in interface org.apache.cocoon.environment.Environment

isResponseModified

public boolean isResponseModified(long lastModified)
Specified by:
isResponseModified in interface org.apache.cocoon.environment.Environment

setResponseIsNotModified

public void setResponseIsNotModified()
Specified by:
setResponseIsNotModified in interface org.apache.cocoon.environment.Environment

setAttribute

public void setAttribute(String name,
                         Object value)
Specified by:
setAttribute in interface org.apache.cocoon.environment.Environment

getAttribute

public Object getAttribute(String name)
Specified by:
getAttribute in interface org.apache.cocoon.environment.Environment

removeAttribute

public void removeAttribute(String name)
Specified by:
removeAttribute in interface org.apache.cocoon.environment.Environment

getAttributeNames

public Enumeration getAttributeNames()
Specified by:
getAttributeNames in interface org.apache.cocoon.environment.Environment

tryResetResponse

public boolean tryResetResponse()
                         throws IOException
Specified by:
tryResetResponse in interface org.apache.cocoon.environment.Environment
Throws:
IOException

commitResponse

public void commitResponse()
                    throws IOException
Specified by:
commitResponse in interface org.apache.cocoon.environment.Environment
Throws:
IOException

startingProcessing

public void startingProcessing()
Specified by:
startingProcessing in interface org.apache.cocoon.environment.Environment

finishingProcessing

public void finishingProcessing()
Specified by:
finishingProcessing in interface org.apache.cocoon.environment.Environment

isExternal

public boolean isExternal()
Specified by:
isExternal in interface org.apache.cocoon.environment.Environment

reset

public void reset()

isInternalRedirect

public boolean isInternalRedirect()
Specified by:
isInternalRedirect in interface org.apache.cocoon.environment.Environment


Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.