lenya/src/java/org/apache/lenya/cms/publication SiteTree.java,1.2,1.3 DefaultSiteTree.java,1.3,1.4
Christian Egli <[email protected]> Tue, 13 May 2003 14:28:55 +0200
| Newsgroups | gmane.comp.cms.wyona.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /repository/lenya/src/java/org/apache/lenya/cms/publication
In directory erbium:/tmp/cvs-serv4874/src/java/org/apache/lenya/cms/publication
Modified Files:
SiteTree.java DefaultSiteTree.java
Log Message:
SiteTree interface now uses the SiteTreeNode now instead of the plain
w3c.dom.Node (in the methods getNode and addNode).
Index: SiteTree.java
===================================================================
RCS file: /repository/lenya/src/java/org/apache/lenya/cms/publication/SiteTree.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SiteTree.java 12 May 2003 12:57:19 -0000 1.2
--- SiteTree.java 13 May 2003 12:28:53 -0000 1.3
***************
*** 46,62 ****
import java.util.Map;
- import org.w3c.dom.Node;
-
public interface SiteTree {
! public void addNode(String parentid, String id, Label[] labels);
!
! public void addNode(String parentid, String id, Label[] labels,
! String href, String suffix, boolean link);
!
! public void addNode(Node node);
!
! public void deleteNode(String id);
!
! public Node getNode(String documentId);
}
--- 46,60 ----
import java.util.Map;
public interface SiteTree {
! void addNode(String parentid, String id, Label[] labels);
!
! void addNode(String parentid, String id, Label[] labels,
! String href, String suffix, boolean link);
!
! void addNode(SiteTreeNode node);
!
! void deleteNode(String id);
!
! SiteTreeNode getNode(String documentId);
}
Index: DefaultSiteTree.java
===================================================================
RCS file: /repository/lenya/src/java/org/apache/lenya/cms/publication/DefaultSiteTree.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** DefaultSiteTree.java 12 May 2003 12:57:19 -0000 1.3
--- DefaultSiteTree.java 13 May 2003 12:28:53 -0000 1.4
***************
*** 78,83 ****
public static final String NAMESPACE_URI = "http://www.lenya.org/2003/sitetree";
- public static final String NODE_NAME = "node";
- public static final String LABEL_NAME = "label";
private Document document = null;
--- 78,81 ----
***************
*** 156,176 ****
// Add node
! Element child = helper.createElement(NODE_NAME);
! child.setAttribute("id", id);
if (href != null && href.length() > 0) {
! child.setAttribute("href", href);
}
if (suffix != null && suffix.length() > 0) {
! child.setAttribute("suffix", suffix);
}
if (link == true) {
! child.setAttribute("link", "true");
}
for (int i = 0; i < labels.length; i++) {
String labelName = labels[i].getLabel();
! Element label = helper.createElement(LABEL_NAME, labelName);
String labelLanguage = labels[i].getLanguage();
if (labelLanguage != null && labelLanguage.length() > 0) {
! label.setAttribute("xml:lang", labelLanguage);
}
child.appendChild(label);
--- 154,174 ----
// Add node
! Element child = helper.createElement(SiteTreeNodeImpl.NODE_NAME);
! child.setAttribute(SiteTreeNodeImpl.ID_ATTRIBUTE_NAME, id);
if (href != null && href.length() > 0) {
! child.setAttribute(SiteTreeNodeImpl.HREF_ATTRIBUTE_NAME, href);
}
if (suffix != null && suffix.length() > 0) {
! child.setAttribute(SiteTreeNodeImpl.SUFFIX_ATTRIBUTE_NAME, suffix);
}
if (link == true) {
! child.setAttribute(SiteTreeNodeImpl.LINK_ATTRIBUTE_NAME, "true");
}
for (int i = 0; i < labels.length; i++) {
String labelName = labels[i].getLabel();
! Element label = helper.createElement(SiteTreeNodeImpl.LABEL_NAME, labelName);
String labelLanguage = labels[i].getLanguage();
if (labelLanguage != null && labelLanguage.length() > 0) {
! label.setAttribute(SiteTreeNodeImpl.LANGUAGE_ATTRIBUTE_NAME, labelLanguage);
}
child.appendChild(label);
***************
*** 181,224 ****
}
! public void addNode(Node node) {
! // Get parent element
! String parentId = "FIXME:"; // node.getParentId();
! StringTokenizer st = new StringTokenizer(parentId, "/");
! ArrayList ids = new ArrayList();
! while (st.hasMoreTokens()) {
! ids.add(st.nextToken());
! }
!
! Element root = document.getDocumentElement();
!
! Node parentNode = findNode(root, ids);
!
! if (parentNode == null) {
! log.error("No nodes: " + parentId + ". No child added");
!
! return;
! }
!
! log.debug("PARENT ELEMENT: " + parentNode);
!
! // // Check if child already exists
! // String newChildXPath = xpath_string + "/" + "node";
! // log.debug("CHECK: " + newChildXPath);
!
! // if (doc.selectSingleNode(newChildXPath + "[@id='" + id + "']") != null) {
! // log.error("Exception: XPath exists: " + newChildXPath + "[@id='" + id + "']");
! // log.error("No child added");
!
! // return;
! // }
!
! // Add node
! parentNode.appendChild(node.cloneNode(true));
! log.debug("Tree has been modified: " + root);
}
public void deleteNode(String id) {}
! public Node getNode(String documentId) {
StringTokenizer st = new StringTokenizer(documentId, "/");
ArrayList ids = new ArrayList();
--- 179,190 ----
}
! public void addNode(SiteTreeNode node) {
! this.addNode(node.getParentId(), node.getId(), node.getLabels(),
! node.getHref(), node.getSuffix(), node.hasLink());
}
public void deleteNode(String id) {}
! public SiteTreeNode getNode(String documentId) {
StringTokenizer st = new StringTokenizer(documentId, "/");
ArrayList ids = new ArrayList();
***************
*** 227,233 ****
}
! Element root = document.getDocumentElement();
!
! return findNode(root, ids);
}
--- 193,201 ----
}
! Node node = findNode(document.getDocumentElement(), ids);
! if (node == null) {
! return null;
! }
! return new SiteTreeNodeImpl(node);
}