You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2007/12/20 15:07:59 UTC

svn commit: r605934 - /lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java

Author: andreas
Date: Thu Dec 20 06:07:58 2007
New Revision: 605934

URL: http://svn.apache.org/viewvc?rev=605934&view=rev
Log:
Allow to pass the publication ID as a parameter to the sitetree fragment generator.

Modified:
    lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java

Modified: lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java?rev=605934&r1=605933&r2=605934&view=diff
==============================================================================
--- lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java (original)
+++ lenya/trunk/src/modules/sitetree/java/src/org/apache/lenya/cms/cocoon/generation/SitetreeFragmentGenerator.java Thu Dec 20 06:07:58 2007
@@ -30,14 +30,19 @@
 import org.apache.cocoon.environment.Request;
 import org.apache.cocoon.environment.SourceResolver;
 import org.apache.cocoon.generation.ServiceableGenerator;
+import org.apache.lenya.cms.publication.DocumentFactory;
+import org.apache.lenya.cms.publication.DocumentUtil;
 import org.apache.lenya.cms.publication.Publication;
 import org.apache.lenya.cms.publication.PublicationException;
-import org.apache.lenya.cms.publication.PublicationUtil;
+import org.apache.lenya.cms.publication.URLInformation;
+import org.apache.lenya.cms.repository.RepositoryUtil;
+import org.apache.lenya.cms.repository.Session;
 import org.apache.lenya.cms.site.Link;
 import org.apache.lenya.cms.site.SiteException;
 import org.apache.lenya.cms.site.SiteManager;
 import org.apache.lenya.cms.site.SiteNode;
 import org.apache.lenya.cms.site.SiteStructure;
+import org.apache.lenya.util.ServletHelper;
 import org.xml.sax.SAXException;
 import org.xml.sax.helpers.AttributesImpl;
 
@@ -76,6 +81,7 @@
      */
     protected AttributesImpl attributes;
 
+    protected static final String PARAM_PUB = "pub";
     protected static final String PARAM_AREA = "area";
     protected static final String PARAM_PATH = "path";
     protected static final String PARAM_INITIAL = "initial";
@@ -156,12 +162,24 @@
             }
             this.getLogger().debug("Parameter areas: " + areasStr.toString());
         }
-
+        
         try {
-            this.publication = PublicationUtil.getPublication(this.manager, _objectModel);
+            Session session = RepositoryUtil.getSession(this.manager, request);
+            DocumentFactory factory = DocumentUtil.createDocumentFactory(this.manager, session);
+            String pubId = null;
+            if (par.isParameter(PARAM_PUB)) {
+                pubId = par.getParameter(PARAM_PUB);
+            }
+            else {
+                String webappUrl = ServletHelper.getWebappURI(request);
+                URLInformation info = new URLInformation(webappUrl);
+                pubId = info.getPublicationId();
+            }
+            this.publication = factory.getPublication(pubId);
         } catch (Exception e) {
             throw new ProcessingException("Could not create publication: ", e);
         }
+
         this.attributes = new AttributesImpl();
 
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org