com.opensymphony.module.sitemesh.mapper
Class PageDecoratorMapper

java.lang.Object
  extended by com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper
      extended by com.opensymphony.module.sitemesh.mapper.PageDecoratorMapper
All Implemented Interfaces:
DecoratorMapper

public class PageDecoratorMapper
extends AbstractDecoratorMapper

The PageDecoratorMapper allows the actual Page to determine the Decorator to be used.

The 'meta.decorator' and 'decorator' properties of the page are accessed and if any of them contain the name of a valid Decorator, that Decorator shall be applied.

As an example, if HTML is being used, the Decorator could be chosen by using a <html decorator="mydecorator"> root tag or by using a <meta name="decorator" content="mydecorator"> tag in the header.

The actual properties to query are specified by passing properties to the mapper using the property.? prefix. As the properties are stored in a Map, each key has to be unique. Example: property.1=decorator, property.2=meta.decorator .

Version:
$Revision: 1.2 $
Author:
Joe Walnes
See Also:
DecoratorMapper

Field Summary
private  List pageProps
           
 
Fields inherited from class com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper
config, parent
 
Constructor Summary
PageDecoratorMapper()
           
 
Method Summary
private  Decorator getByProperty(javax.servlet.http.HttpServletRequest request, Page p, String name)
           
 Decorator getDecorator(javax.servlet.http.HttpServletRequest request, Page page)
          Delegate to parent.
 void init(Config config, Properties properties, DecoratorMapper parent)
          Set parent.
 
Methods inherited from class com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper
getNamedDecorator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

pageProps

private List pageProps
Constructor Detail

PageDecoratorMapper

public PageDecoratorMapper()
Method Detail

init

public void init(Config config,
                 Properties properties,
                 DecoratorMapper parent)
          throws InstantiationException
Description copied from class: AbstractDecoratorMapper
Set parent.

Specified by:
init in interface DecoratorMapper
Overrides:
init in class AbstractDecoratorMapper
Parameters:
config - Config supplied by Servlet or Filter.
properties - Any initialization properties (specific to implementation).
Throws:
InstantiationException - should be thrown if the implementation cannot be initialized properly.

getDecorator

public Decorator getDecorator(javax.servlet.http.HttpServletRequest request,
                              Page page)
Description copied from class: AbstractDecoratorMapper
Delegate to parent.

Specified by:
getDecorator in interface DecoratorMapper
Overrides:
getDecorator in class AbstractDecoratorMapper

getByProperty

private Decorator getByProperty(javax.servlet.http.HttpServletRequest request,
                                Page p,
                                String name)

www.opensymphony.com/sitemesh/