Class OSDecoratorMapper
java.lang.Object
com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper
com.opensymphony.module.sitemesh.mapper.OSDecoratorMapper
- All Implemented Interfaces:
DecoratorMapper
The OSDecoratorMapper will map a suitable decorator based on the operating system of the remote client.
OSDecoratorMapper works by checking to see if the "UA-OS" header was sent with the HTTP request. If it was, the class will check the value of the header with all the different os's the user has configured the Decorator Mapper to identify and, if a match is found, routes the request accordingly. Configuration is done using the sitemesh.xml file. The param name is a string literal (operating system name) you would like to match in the UA-OS header, and the value is what will be appended to the decorator name if the user is using that operating system
- Author:
- Adam P. Schepis
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected PropertiesProperties holds the parameters that the object was initialized with.Fields inherited from class com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper
config, parent -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetDecorator(javax.servlet.http.HttpServletRequest request, Page page) Attempts to find the correct decorator for Page page based on the UA-OS HTTP header in the request.voidinit(Config config, Properties properties, DecoratorMapper parent) Init initializes the OSDecoratorMapper object by setting the parent DecoratorMapper, and loading the initialization properties.Methods inherited from class com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper
getNamedDecorator
-
Field Details
-
properties
Properties holds the parameters that the object was initialized with.
-
-
Constructor Details
-
OSDecoratorMapper
public OSDecoratorMapper()
-
-
Method Details
-
init
public void init(Config config, Properties properties, DecoratorMapper parent) throws InstantiationException Init initializes the OSDecoratorMapper object by setting the parent DecoratorMapper, and loading the initialization properties.- Specified by:
initin interfaceDecoratorMapper- Overrides:
initin classAbstractDecoratorMapper- Parameters:
config- The config fileproperties- An object containing intialization parametersparent- The parent DecoratorMapper object- Throws:
InstantiationException- the instantiation exception
-
getDecorator
Attempts to find the correct decorator for Page page based on the UA-OS HTTP header in the request.- Specified by:
getDecoratorin interfaceDecoratorMapper- Overrides:
getDecoratorin classAbstractDecoratorMapper- Parameters:
request- The HTTP request sent to the serverpage- The page SiteMesh is trying to find a decorator for- Returns:
- A Decorator object that is either the decorator for the identified OS, or the parent DecoratorMapper's decorator
-