You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-dev@portals.apache.org by Jaroslaw Cora <j....@avantage.com.pl> on 2004/06/15 17:54:23 UTC
Multiple layouts
Hi all,
I am aware that any significant enhancements to the Pluto portal driver are
outside the scope of the Pluto project. Nevertheless I would love to hear
your opinion on the following problem
I would like to extend the Pluto portal driver with support for multiple
layouts. I can think of two approaches to this problem:
Approach 1: separate aggregation base dirs
- Provide different JSP pages for each layout and keep them in separate
aggregation folders
- Modify AbstractFragment and - unfortunately - all its subclasses, and
replace the constant BASE_ROOT with a dynamic call to
DynamicLayoutProviderService.
- Introduce DynamicLayoutProviderService with a single method returning a path
to aggregation root.
- The default implementation of this service would just return BASE_ROOT from
the configuration, so we would maintain the current functionality. However,
thanks to the mechanism provided by ServiceManager, this service could be
easily replaced with an implementation that returns aggregation root based,
for example, on user preferences.
Approach 2: multiple pageregistry.xml files
Modify PageRegistry so it supports multiple pageregistry.xml files. This would
probably involve adding a parameter (layout id) to all methods of
PageRegistryService.
The second approach seems to be in accord with the original vision of Pluto
driver designer(s), but it's also probably more difficult to implement.
I would really appreciate your comments and critisism.
Thanks.
--
Jaroslaw Cora
Avantage sp. z o.o.