javax.faces.render
Class RenderKitFactory

java.lang.Object
  extended by javax.faces.render.RenderKitFactory
All Implemented Interfaces:
FacesWrapper<RenderKitFactory>

public abstract class RenderKitFactory
extends Object
implements FacesWrapper<RenderKitFactory>

RenderKitFactory is a factory object that registers and returns RenderKit instances. Implementations of JavaServer Faces must provide at least a default implementation of RenderKit. Advanced implementations (or external third party libraries) may provide additional RenderKit implementations (keyed by render kit identifiers) for performing different types of rendering for the same components.

There must be one RenderKitFactory instance per web application that is utilizing JavaServer Faces. This instance can be acquired, in a portable manner, by calling:

   RenderKitFactory factory = (RenderKitFactory)
    FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);
 


Field Summary
static String HTML_BASIC_RENDER_KIT
          The render kit identifier of the default RenderKit instance for this JavaServer Faces implementation.
 
Constructor Summary
RenderKitFactory()
           
 
Method Summary
abstract  void addRenderKit(String renderKitId, RenderKit renderKit)
          Register the specified RenderKit instance, associated with the specified renderKitId, to be supported by this RenderKitFactory, replacing any previously registered RenderKit for this identifier.
abstract  RenderKit getRenderKit(FacesContext context, String renderKitId)
          Return a RenderKit instance for the specified render kit identifier, possibly customized based on dynamic characteristics of the specified FacesContext, if non-null.
abstract  Iterator<String> getRenderKitIds()
          Return an Iterator over the set of render kit identifiers registered with this factory.
 RenderKitFactory getWrapped()
          

If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped.

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

Field Detail

HTML_BASIC_RENDER_KIT

public static final String HTML_BASIC_RENDER_KIT

The render kit identifier of the default RenderKit instance for this JavaServer Faces implementation.

See Also:
Constant Field Values
Constructor Detail

RenderKitFactory

public RenderKitFactory()
Method Detail

getWrapped

public RenderKitFactory getWrapped()

If this factory has been decorated, the implementation doing the decorating may override this method to provide access to the implementation being wrapped. A default implementation is provided that returns null.

Specified by:
getWrapped in interface FacesWrapper<RenderKitFactory>
Since:
2.0

addRenderKit

public abstract void addRenderKit(String renderKitId,
                                  RenderKit renderKit)

Register the specified RenderKit instance, associated with the specified renderKitId, to be supported by this RenderKitFactory, replacing any previously registered RenderKit for this identifier.

Parameters:
renderKitId - Identifier of the RenderKit to register
renderKit - RenderKit instance that we are registering
Throws:
NullPointerException - if renderKitId or renderKit is null

getRenderKit

public abstract RenderKit getRenderKit(FacesContext context,
                                       String renderKitId)

Return a RenderKit instance for the specified render kit identifier, possibly customized based on dynamic characteristics of the specified FacesContext, if non-null. If there is no registered RenderKit for the specified identifier, return null. The set of available render kit identifiers is available via the getRenderKitIds() method.

Parameters:
context - FacesContext for the request currently being processed, or null if none is available.
renderKitId - Render kit identifier of the requested RenderKit instance
Throws:
IllegalArgumentException - if no RenderKit instance can be returned for the specified identifier
NullPointerException - if renderKitId is null

getRenderKitIds

public abstract Iterator<String> getRenderKitIds()

Return an Iterator over the set of render kit identifiers registered with this factory. This set must include the value specified by RenderKitFactory.HTML_BASIC_RENDER_KIT.



Copyright 2002-2009 Sun Microsystems, Inc. All Rights Reserved.