From: <fg...@us...> - 2009-05-02 12:36:21
|
Revision: 1178 http://openutils.svn.sourceforge.net/openutils/?rev=1178&view=rev Author: fgiust Date: 2009-05-02 12:36:19 +0000 (Sat, 02 May 2009) Log Message: ----------- patches + i18nbasename support Modified Paths: -------------- trunk/openutils-mgnlstripes/pom.xml trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlActionResolver.java trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlStripesRequestWrapper.java trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesRenderer.java trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/setup/StripesModuleVersionHandler.java trunk/openutils-mgnlstripes/src/main/resources/META-INF/magnolia/stripes.xml trunk/openutils-mgnlstripes/src/site/changes/changes.xml Added Paths: ----------- trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesModule.java Modified: trunk/openutils-mgnlstripes/pom.xml =================================================================== --- trunk/openutils-mgnlstripes/pom.xml 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/pom.xml 2009-05-02 12:36:19 UTC (rev 1178) @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <parent> <groupId>net.sourceforge.openutils</groupId> <artifactId>openutils</artifactId> @@ -39,7 +40,7 @@ <dependency> <groupId>net.sourceforge.stripes</groupId> <artifactId>stripes</artifactId> - <version>1.5</version> + <version>1.5.1</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> @@ -58,6 +59,11 @@ <version>4.0</version> </dependency> <dependency> + <groupId>net.sourceforge.openutils</groupId> + <artifactId>openutils-mgnltasks</artifactId> + <version>4.0.1</version> + </dependency> + <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> @@ -96,4 +102,4 @@ </snapshots> </repository> </repositories> -</project> +</project> \ No newline at end of file Modified: trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlActionResolver.java =================================================================== --- trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlActionResolver.java 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlActionResolver.java 2009-05-02 12:36:19 UTC (rev 1178) @@ -97,6 +97,7 @@ paragraph.setDialog(name); paragraph.setTemplatePath(binding); paragraph.setType("stripes"); + paragraph.setI18nBasename(StripesModule.getInstance().getI18nbasename()); paragraphs.add(paragraph); log.info("Registering stripes paragraph {}", paragraph.getName()); //$NON-NLS-1$ Modified: trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlStripesRequestWrapper.java =================================================================== --- trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlStripesRequestWrapper.java 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/MgnlStripesRequestWrapper.java 2009-05-02 12:36:19 UTC (rev 1178) @@ -45,6 +45,10 @@ class MgnlStripesRequestWrapper extends HttpServletRequestWrapper { + private static final String SERVLET_PATH = "mgnlStripesServletPath"; + + private static final String ALREADY_INCLUDED = "mgnlAlreadyIncluded"; + /** * Hacked servlet path. */ @@ -139,7 +143,7 @@ @Override public RequestDispatcher getRequestDispatcher(String path) { - return new MagnoliaRequestDispatcher(path, out); + return new MagnoliaRequestDispatcher(path, out, (HttpServletRequest) this.getRequest()); } /** @@ -157,14 +161,17 @@ private Writer out; + private HttpServletRequest originalRequest; + /** * Created a new MagnoliaRequestDispatcher for the given url. * @param url url passed to {@link HttpServletRequest#getRequestDispatcher()} */ - public MagnoliaRequestDispatcher(String url, Writer out) + public MagnoliaRequestDispatcher(String url, Writer out, HttpServletRequest originalRequest) { this.url = url; this.out = out; + this.originalRequest = originalRequest; } /** @@ -172,7 +179,16 @@ */ public void forward(ServletRequest request, ServletResponse response) throws ServletException, IOException { - ((WebContext) MgnlContext.getInstance()).include(url, out); + request.setAttribute(SERVLET_PATH, url); + if (request.getAttribute(ALREADY_INCLUDED) == null) + { + request.setAttribute(ALREADY_INCLUDED, true); + ((WebContext) MgnlContext.getInstance()).include(url, out); + } + else + { + originalRequest.getRequestDispatcher(url).include(request, response); + } } /** @@ -180,7 +196,16 @@ */ public void include(ServletRequest request, ServletResponse response) throws ServletException, IOException { - ((WebContext) MgnlContext.getInstance()).include(url, out); + request.setAttribute(SERVLET_PATH, url); + if (request.getAttribute(ALREADY_INCLUDED) == null) + { + request.setAttribute(ALREADY_INCLUDED, true); + ((WebContext) MgnlContext.getInstance()).include(url, out); + } + else + { + originalRequest.getRequestDispatcher(url).include(request, response); + } } } Added: trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesModule.java =================================================================== --- trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesModule.java (rev 0) +++ trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesModule.java 2009-05-02 12:36:19 UTC (rev 1178) @@ -0,0 +1,82 @@ +/** + * Copyright Openmind http://www.openmindonline.it + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +package it.openutils.magnoliastripes; + +import info.magnolia.module.ModuleLifecycle; +import info.magnolia.module.ModuleLifecycleContext; + + +/** + * @author fgiust + * @version $Id$ + */ +public class StripesModule implements ModuleLifecycle +{ + + private static StripesModule instance; + + /** + * Basename for Stripes paragraphs. + */ + private String i18nbasename; + + public StripesModule() + { + instance = this; + } + + public static StripesModule getInstance() + { + return instance; + } + + /** + * {@inheritDoc} + */ + public void start(ModuleLifecycleContext moduleLifecycleContext) + { + // nothing to do + } + + /** + * {@inheritDoc} + */ + public void stop(ModuleLifecycleContext moduleLifecycleContext) + { + // nothing to do + } + + /** + * Returns the i18nbasename. + * @return the i18nbasename + */ + public String getI18nbasename() + { + return i18nbasename; + } + + /** + * Sets the i18nbasename. + * @param i18nbasename the i18nbasename to set + */ + public void setI18nbasename(String i18nbasename) + { + this.i18nbasename = i18nbasename; + } + +} Property changes on: trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesModule.java ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesRenderer.java =================================================================== --- trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesRenderer.java 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/StripesRenderer.java 2009-05-02 12:36:19 UTC (rev 1178) @@ -225,7 +225,8 @@ * {@inheritDoc} */ @Override - public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException + public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, + IOException { super.doPost(request, response); } Modified: trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/setup/StripesModuleVersionHandler.java =================================================================== --- trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/setup/StripesModuleVersionHandler.java 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/src/main/java/it/openutils/magnoliastripes/setup/StripesModuleVersionHandler.java 2009-05-02 12:36:19 UTC (rev 1178) @@ -17,11 +17,13 @@ */ package it.openutils.magnoliastripes.setup; +import info.magnolia.cms.beans.config.ContentRepository; import info.magnolia.module.DefaultModuleVersionHandler; import info.magnolia.module.InstallContext; import info.magnolia.module.delta.AddMimeMappingTask; import info.magnolia.module.delta.FilterOrderingTask; import info.magnolia.module.delta.Task; +import it.openutils.mgnltasks.CreateMissingPropertyTask; import java.util.List; @@ -44,6 +46,14 @@ tasks.add(new AddMimeMappingTask("action", "text/plain", "/.resources/file-icons/htm.png")); + tasks.add(new CreateMissingPropertyTask( + "Adding property: /modules/stripes/config/i18nbasename", + "Adding property: /modules/stripes/config/i18nbasename", + ContentRepository.CONFIG, + "/modules/stripes/config", + "i18nbasename", + "it.openutils.magnoliastripes")); + tasks.add(new FilterOrderingTask( "stripes", new String[]{"context", "login", "uriSecurity", "multipartRequest" })); Modified: trunk/openutils-mgnlstripes/src/main/resources/META-INF/magnolia/stripes.xml =================================================================== --- trunk/openutils-mgnlstripes/src/main/resources/META-INF/magnolia/stripes.xml 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/src/main/resources/META-INF/magnolia/stripes.xml 2009-05-02 12:36:19 UTC (rev 1178) @@ -4,6 +4,7 @@ <name>stripes</name> <displayName>stripes</displayName> <description>Stripes integration module</description> + <class>it.openutils.magnoliastripes.StripesModule</class> <versionHandler>it.openutils.magnoliastripes.setup.StripesModuleVersionHandler</versionHandler> <version>${project.version}</version> -</module> +</module> \ No newline at end of file Modified: trunk/openutils-mgnlstripes/src/site/changes/changes.xml =================================================================== --- trunk/openutils-mgnlstripes/src/site/changes/changes.xml 2009-05-02 12:27:05 UTC (rev 1177) +++ trunk/openutils-mgnlstripes/src/site/changes/changes.xml 2009-05-02 12:36:19 UTC (rev 1178) @@ -8,8 +8,15 @@ <author email="fgiust(at)users.sourceforge.net">Fabrizio Giustina</author> </properties> <body> + <release version="4.0" date="2009-05-02" description=""> + <action type="update" dev="fgiust">updated to Stripes 1.5.1</action> + <action type="add" dev="fgiust">added dependency from openutils-mgnltasks</action> + <action type="add" dev="fgiust">i18n basename for paragraphs can now be set using the + /modules/stripes/config/i18nbasename property</action> + </release> <release version="4.0" date="2009-01-30" description=""> - <action type="update" dev="molaschi">port to magnolia 4.0 (created the branch "openutils-mgnlstripes-3.6.x" to continue supporting magnolia 3.6.x integration)</action> + <action type="update" dev="molaschi">port to magnolia 4.0 (created the branch "openutils-mgnlstripes-3.6.x" to + continue supporting magnolia 3.6.x integration)</action> </release> <release version="3.6-b2" date="2008-09-17" description=""> <action type="fix" dev="fgiust">fix handling of stripes locale</action> @@ -21,8 +28,8 @@ </release> <release version="3.5" date="2008-04-24" description="3.5"> <action type="update" dev="fgiust">update deps to magnolia 3.5.4</action> - <action type="update" dev="fgiust">the stripes filter is now added by the module automatically, and it should not - be added anymore in web.xml</action> + <action type="update" dev="fgiust">the stripes filter is now added by the module automatically, and it should not be + added anymore in web.xml</action> <action type="update" dev="fgiust">multipart forms are now handled properly</action> </release> <release version="0.2" date="2007-08-14" description=""> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |