org.apache.myfaces.orchestra.lib.jsf
Class _FacesContextWrapper

java.lang.Object
  extended by javax.faces.context.FacesContext
      extended by javax.faces.context.FacesContextWrapper
          extended by org.apache.myfaces.orchestra.lib.jsf._FacesContextWrapper
All Implemented Interfaces:
javax.faces.FacesWrapper<javax.faces.context.FacesContext>

public class _FacesContextWrapper
extends javax.faces.context.FacesContextWrapper

Convenient class to wrap the current FacesContext.

A class of this name is provided in JSF1.2, but not in JSF1.1.

Any methods that do not actually need to be overridden are declared final in order to improve performance (helps the JVM to optimise away the call).

Note that whether a newly-created instance immediately becomes the object that is returned by FacesContext.getCurrentInstance() depends upon the value of the "install" parameter for the constructor method.

This class is copied from the code in MyFaces Core Impl 1.2.x, but modified to be compatible with JSF1.1.

Note that this class must be public in order to support custom FacesContextFactory classes in other libraries that also wrap this instance, then use reflection to invoke methods on this object. In this case, an IllegalAccessException would occur if this class was package-scoped. However this class is NOT intended to be part of the public Orchestra API, and may change at any time.

Since:
1.1
Version:
$Revision: 672906 $ $Date: 2008-06-30 15:45:16 -0500 (lun, 30 jun 2008) $
Author:
Manfred Geiler (latest modification by $Author: skitching $), Anton Koinov

Constructor Summary
_FacesContextWrapper(javax.faces.context.FacesContext facesContext, boolean install)
          The install parameter controls whether this object will be configured as the object returned from calls to FacesContext.getCurrentInstance() or not.
 
Method Summary
 javax.faces.context.FacesContext getWrapped()
           
 
Methods inherited from class javax.faces.context.FacesContextWrapper
addMessage, getApplication, getAttributes, getClientIdsWithMessages, getCurrentPhaseId, getELContext, getExceptionHandler, getExternalContext, getMaximumSeverity, getMessageList, getMessageList, getMessages, getMessages, getPartialViewContext, getRenderKit, getRenderResponse, getResponseComplete, getResponseStream, getResponseWriter, getViewRoot, isPostback, isProcessingEvents, isProjectStage, isValidationFailed, release, renderResponse, responseComplete, setCurrentPhaseId, setExceptionHandler, setProcessingEvents, setResponseStream, setResponseWriter, setViewRoot, validationFailed
 
Methods inherited from class javax.faces.context.FacesContext
getCurrentInstance, setCurrentInstance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

_FacesContextWrapper

public _FacesContextWrapper(javax.faces.context.FacesContext facesContext,
                            boolean install)
The install parameter controls whether this object will be configured as the object returned from calls to FacesContext.getCurrentInstance() or not.

When only overriding the release() method, then install=false is ok as that is called directly by the FacesServlet on the instance returned by the FacesContextFactory. However all other methods are invoked on the object that is returned from FacesContext.getCurrentInstance, so install=true is needed in order for any other method overrides to have any effect.

IMPORTANT: install=true should not be used until MYFACES-1820 is fixed.

Method Detail

getWrapped

public javax.faces.context.FacesContext getWrapped()
Specified by:
getWrapped in interface javax.faces.FacesWrapper<javax.faces.context.FacesContext>
Overrides:
getWrapped in class javax.faces.context.FacesContextWrapper


Copyright © 2009 The Apache Software Foundation. All Rights Reserved.