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 2004/09/17 18:48:45 UTC
svn commit: rev 46263 - in incubator/lenya/trunk/src/webapp/lenya: content/publishing pubs/default/java/src/org/apache/lenya/defaultpub/cms/task
Author: andreas
Date: Fri Sep 17 09:48:44 2004
New Revision: 46263
Modified:
incubator/lenya/trunk/src/webapp/lenya/content/publishing/screen.xsp
incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Deactivate.java
incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Publish.java
Log:
introduced DocumentFactory
Modified: incubator/lenya/trunk/src/webapp/lenya/content/publishing/screen.xsp
==============================================================================
--- incubator/lenya/trunk/src/webapp/lenya/content/publishing/screen.xsp (original)
+++ incubator/lenya/trunk/src/webapp/lenya/content/publishing/screen.xsp Fri Sep 17 09:48:44 2004
@@ -31,9 +31,8 @@
<xsp:include>org.apache.lenya.ac.UserManager</xsp:include>
<xsp:include>org.apache.lenya.cms.publication.DefaultDocumentBuilder</xsp:include>
<xsp:include>org.apache.lenya.cms.publication.Document</xsp:include>
+ <xsp:include>org.apache.lenya.cms.publication.DocumentIdentityMap</xsp:include>
<xsp:include>org.apache.lenya.cms.publication.Publication</xsp:include>
- <xsp:include>org.apache.lenya.cms.site.tree.SiteTree</xsp:include>
- <xsp:include>org.apache.lenya.cms.site.tree.SiteTreeNode</xsp:include>
<xsp:include>org.apache.lenya.cms.publication.xsp.DocumentReferencesHelper</xsp:include>
<xsp:include>org.apache.lenya.cms.workflow.CMSVersion</xsp:include>
<xsp:include>org.apache.lenya.cms.workflow.WorkflowFactory</xsp:include>
@@ -60,32 +59,22 @@
<usecase:task-id>publish</usecase:task-id>
<xsp:logic>
+ Document document = (Document) <input:get-attribute module="page-envelope" as="object" name="document"/>;
+ DocumentIdentityMap identityMap = document.getIdentityMap();
+
try {
- Document document = (Document) <input:get-attribute module="page-envelope" as="object" name="document"/>;
- Object authoringNodeObject = <input:get-attribute module="sitetree" as="object" name="authoring-node"/>;
- if (null != authoringNodeObject && authoringNodeObject instanceof SiteTreeNode) {
- SiteTreeNode authoringNode = (SiteTreeNode) authoringNodeObject;
- String authoringParentId = authoringNode.getAbsoluteParentId();
-
- SiteTree liveTree = document.getPublication().getSiteTree(Publication.LIVE_AREA);
- SiteTreeNode liveParent = liveTree.getNode(authoringParentId);
+ Document parent = identityMap.getFactory().getParent(document);
+ Document liveParent = identityMap.getFactory().getAreaVersion(document, Publication.LIVE_AREA);
+ if (!liveParent.exists()) {
+ <usecase:message id="parent-not-live"/>
- Publication publication = (Publication)
- <input:get-attribute module="page-envelope" as="object" name="publication"/>;
-
- if (liveParent == null) {
- <usecase:message id="parent-not-live"/>
+ String url = liveParent.getCanonicalWebappURL();
- DefaultDocumentBuilder builder = DefaultDocumentBuilder.getInstance();
- String url = builder.buildCanonicalUrl(publication,
- document.getArea(), authoringNode.getAbsoluteParentId(), document.getLanguage());
-
- <usecase:parent>
- <xsp:attribute name="href"><xsp-request:get-context-path/><xsp:expr>url</xsp:expr></xsp:attribute>
- <xsp:attribute name="id"><xsp:expr>authoringNode.getParentId()</xsp:expr></xsp:attribute>
- <xsp:attribute name="language"><xsp:expr>document.getLanguage()</xsp:expr></xsp:attribute>
- </usecase:parent>
- }
+ <usecase:parent>
+ <xsp:attribute name="href"><xsp-request:get-context-path/><xsp:expr>url</xsp:expr></xsp:attribute>
+ <xsp:attribute name="id"><xsp:expr>liveParent.getId()</xsp:expr></xsp:attribute>
+ <xsp:attribute name="language"><xsp:expr>liveParent.getLanguage()</xsp:expr></xsp:attribute>
+ </usecase:parent>
}
}
@@ -96,11 +85,8 @@
<not:users>
<xsp:logic>
-
try {
- Document document = (Document)
- <input:get-attribute module="page-envelope" as="object" name="document"/>;
String userId = null;
if (WorkflowFactory.newInstance().hasWorkflow(document)) {
@@ -137,7 +123,7 @@
</not:users>
<xsp:logic>
- DocumentReferencesHelper helper = new DocumentReferencesHelper(objectModel);
+ DocumentReferencesHelper helper = new DocumentReferencesHelper(document.getIdentityMap(), objectModel);
Document[] references = helper.getInternalReferences();
if (references.length > 0) {
</xsp:logic><referenced-documents><xsp:logic>
Modified: incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Deactivate.java
==============================================================================
--- incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Deactivate.java (original)
+++ incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Deactivate.java Fri Sep 17 09:48:44 2004
@@ -159,7 +159,7 @@
throws ParameterException, DocumentBuildException, ExecutionException {
String id = getParameters().getParameter(PARAMETER_DOCUMENT_ID);
String language = getParameters().getParameter(PARAMETER_DOCUMENT_LANGUAGE);
- Document document = getIdentityMap().get(Publication.LIVE_AREA, id, language);
+ Document document = getIdentityMap().getFactory().get(Publication.LIVE_AREA, id, language);
return document;
}
Modified: incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Publish.java
==============================================================================
--- incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Publish.java (original)
+++ incubator/lenya/trunk/src/webapp/lenya/pubs/default/java/src/org/apache/lenya/defaultpub/cms/task/Publish.java Fri Sep 17 09:48:44 2004
@@ -26,7 +26,6 @@
import org.apache.lenya.cms.publication.Document;
import org.apache.lenya.cms.publication.DocumentBuildException;
import org.apache.lenya.cms.publication.DocumentException;
-import org.apache.lenya.cms.publication.DocumentHelper;
import org.apache.lenya.cms.publication.Publication;
import org.apache.lenya.cms.publication.PublicationException;
import org.apache.lenya.cms.publication.task.PublicationTask;
@@ -100,7 +99,7 @@
}
Document liveDocument = getPublication().getAreaVersion(document, Publication.LIVE_AREA);
- Document liveParent = DocumentHelper.getParentDocument(liveDocument);
+ Document liveParent = document.getIdentityMap().getFactory().getParent(liveDocument);
if (liveParent != null) {
SiteTree liveTree = getSiteTree(Publication.LIVE_AREA);
SiteTreeNode liveParentNode = liveTree.getNode(liveParent.getId());
@@ -146,7 +145,7 @@
throws ParameterException, DocumentBuildException, ExecutionException {
String id = getParameters().getParameter(PARAMETER_DOCUMENT_ID);
String language = getParameters().getParameter(PARAMETER_DOCUMENT_LANGUAGE);
- Document document = getIdentityMap().get(Publication.AUTHORING_AREA, id, language);
+ Document document = getIdentityMap().getFactory().get(Publication.AUTHORING_AREA, id, language);
return document;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: lenya-cvs-unsubscribe@cocoon.apache.org
For additional commands, e-mail: lenya-cvs-help@cocoon.apache.org