remove reference to spac in readme
diff --git a/.gitignore b/.gitignore
index 2443c87..473372b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
sampleData/*/*Output*
output
tmp/
+archive
diff --git a/readme.txt b/readme.txt
index e0dbfee..ea8efa0 100644
--- a/readme.txt
+++ b/readme.txt
@@ -10,6 +10,3 @@
* chmod a+x *sh
* ./run_uwc_devel.sh
-For more info, please see:
-
-https://studio.plugins.atlassian.com/wiki/display/UWC/Universal+Wiki+Converter
diff --git a/src/com/atlassian/uwc/converters/dokuwiki/HierarchyLinkConverterTest.java b/src/com/atlassian/uwc/converters/dokuwiki/HierarchyLinkConverterTest.java
index 53b39a8..ba485d4 100644
--- a/src/com/atlassian/uwc/converters/dokuwiki/HierarchyLinkConverterTest.java
+++ b/src/com/atlassian/uwc/converters/dokuwiki/HierarchyLinkConverterTest.java
@@ -137,6 +137,7 @@
"[[ns:tada]]\n" +
"[[ns:tada:subchild]]\n" +
"[[ns:tada:other:subchild]]\n" +
+ "[[ns:tada:Other:subchild]]\n" +
"[[ns:tada:other:sub:subsubchild]]\n");
String spacekey = "otherspace";
page.setSpacekey(spacekey);//default spacekey is 'food'
@@ -146,6 +147,7 @@
"[lala:Tada]\n" +
"[lala:Subchild]\n" +
"[foo:Subchild]\n" +
+ "[foo:Subchild]\n" +
"[foo:Subsubchild]\n"; //this one uses the mapping (drink points to food)
assertNotNull(actual);
assertEquals(expected, actual);
diff --git a/src/com/atlassian/uwc/converters/dokuwiki/SpaceConverter.java b/src/com/atlassian/uwc/converters/dokuwiki/SpaceConverter.java
index 1d22fed..f3b306d 100644
--- a/src/com/atlassian/uwc/converters/dokuwiki/SpaceConverter.java
+++ b/src/com/atlassian/uwc/converters/dokuwiki/SpaceConverter.java
@@ -43,7 +43,7 @@
//remove deepest portion of the path
tmppath = removeDeepest(tmppath);
}
-
+ log.debug("spacekey set to: " + page.getSpacekey());
}
static Pattern filetype = Pattern.compile("[.]\\w+$");
diff --git a/src/com/atlassian/uwc/hierarchies/ContentHierarchyTest.java b/src/com/atlassian/uwc/hierarchies/ContentHierarchyTest.java
index 71564f6..9095c8f 100644
--- a/src/com/atlassian/uwc/hierarchies/ContentHierarchyTest.java
+++ b/src/com/atlassian/uwc/hierarchies/ContentHierarchyTest.java
@@ -4,9 +4,8 @@
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
-import java.io.UnsupportedEncodingException;
+import java.util.Collection;
import java.util.Properties;
-import java.util.Set;
import java.util.Vector;
import junit.framework.TestCase;
@@ -49,13 +48,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(2, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -74,7 +73,7 @@
treenode = nodes2.get(1);
}
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(2, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -83,7 +82,7 @@
assertTrue((trees.get(1)).getName().equals("Chestnut") ||
(trees.get(1)).getName().equals("Pine"));
- Set<HierarchyNode> flowerchildren = flowernode.getChildren();
+ Collection<HierarchyNode> flowerchildren = flowernode.getChildren();
assertEquals(3, flowerchildren.size());
Vector<HierarchyNode> flowers = new Vector<HierarchyNode>();
flowers.addAll(flowerchildren);
@@ -128,19 +127,19 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> home = actual.getChildren();
+ Collection<HierarchyNode> home = actual.getChildren();
assertEquals(1, home.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(home);
assertTrue((nodes0.get(0)).getName().equals("Home"));
- Set<HierarchyNode> children1 = nodes0.get(0).getChildren();
+ Collection<HierarchyNode> children1 = nodes0.get(0).getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(2, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -159,7 +158,7 @@
treenode = nodes2.get(1);
}
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(2, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -168,7 +167,7 @@
assertTrue((trees.get(1)).getName().equals("Chestnut") ||
(trees.get(1)).getName().equals("Pine"));
- Set<HierarchyNode> flowerchildren = flowernode.getChildren();
+ Collection<HierarchyNode> flowerchildren = flowernode.getChildren();
assertEquals(3, flowerchildren.size());
Vector<HierarchyNode> flowers = new Vector<HierarchyNode>();
flowers.addAll(flowerchildren);
@@ -208,13 +207,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(3, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -232,7 +231,7 @@
if (node.getName().equals("Plants_Nuts")) nutnode = node;
}
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(2, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -241,7 +240,7 @@
assertTrue((trees.get(1)).getName().equals("Plants_Trees_Chestnut") ||
(trees.get(1)).getName().equals("Plants_Trees_Pine"));
- Set<HierarchyNode> flowerchildren = flowernode.getChildren();
+ Collection<HierarchyNode> flowerchildren = flowernode.getChildren();
assertEquals(3, flowerchildren.size());
Vector<HierarchyNode> flowers = new Vector<HierarchyNode>();
flowers.addAll(flowerchildren);
@@ -255,7 +254,7 @@
(flowers.get(2)).getName().equals("Plants_Flowers_Daisy") ||
(flowers.get(2)).getName().equals("Plants_Flowers_Orchid"));
- Set<HierarchyNode> nutchildren = nutnode.getChildren();
+ Collection<HierarchyNode> nutchildren = nutnode.getChildren();
assertEquals(2, nutchildren.size());
Vector<HierarchyNode> nuts = new Vector<HierarchyNode>();
nuts.addAll(nutchildren);
@@ -296,13 +295,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(3, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -320,7 +319,7 @@
if (node.getName().equals("Nuts")) nutnode = node;
}
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(2, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -329,7 +328,7 @@
assertTrue((trees.get(1)).getName().equals("Chestnut") ||
(trees.get(1)).getName().equals("Pine"));
- Set<HierarchyNode> flowerchildren = flowernode.getChildren();
+ Collection<HierarchyNode> flowerchildren = flowernode.getChildren();
assertEquals(3, flowerchildren.size());
Vector<HierarchyNode> flowers = new Vector<HierarchyNode>();
flowers.addAll(flowerchildren);
@@ -343,7 +342,7 @@
(flowers.get(2)).getName().equals("Daisy") ||
(flowers.get(2)).getName().equals("Orchid"));
- Set<HierarchyNode> nutchildren = nutnode.getChildren();
+ Collection<HierarchyNode> nutchildren = nutnode.getChildren();
assertEquals(2, nutchildren.size());
Vector<HierarchyNode> nuts = new Vector<HierarchyNode>();
nuts.addAll(nutchildren);
@@ -376,13 +375,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(2, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -397,7 +396,7 @@
if (node.getName().equals("Plants Nuts")) nutnode = node;
}
- Set<HierarchyNode> flowerchildren = flowernode.getChildren();
+ Collection<HierarchyNode> flowerchildren = flowernode.getChildren();
assertEquals(2, flowerchildren.size());
Vector<HierarchyNode> flowers = new Vector<HierarchyNode>();
flowers.addAll(flowerchildren);
@@ -406,7 +405,7 @@
assertTrue((flowers.get(1)).getName().equals("Plants Flowers Rose") ||
(flowers.get(1)).getName().equals("Plants Flowers Orchid"));
- Set<HierarchyNode> nutchildren = nutnode.getChildren();
+ Collection<HierarchyNode> nutchildren = nutnode.getChildren();
assertEquals(1, nutchildren.size());
Vector<HierarchyNode> nuts = new Vector<HierarchyNode>();
nuts.addAll(nutchildren);
@@ -447,13 +446,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(1, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -461,7 +460,7 @@
HierarchyNode treenode = nodes2.get(0);
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(5, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -518,19 +517,19 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> home = actual.getChildren();
+ Collection<HierarchyNode> home = actual.getChildren();
assertEquals(1, home.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(home);
assertTrue((nodes0.get(0)).getName().equals("Home"));
- Set<HierarchyNode> children1 = nodes0.get(0).getChildren();
+ Collection<HierarchyNode> children1 = nodes0.get(0).getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(1, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -538,7 +537,7 @@
HierarchyNode treenode = nodes2.get(0);
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(5, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -593,7 +592,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
@@ -631,13 +630,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("Plants"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(1, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -645,7 +644,7 @@
HierarchyNode treenode = nodes2.get(0);
- Set<HierarchyNode> treechildren = treenode.getChildren();
+ Collection<HierarchyNode> treechildren = treenode.getChildren();
assertEquals(5, treechildren.size());
Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
trees.addAll(treechildren);
@@ -808,13 +807,13 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
assertTrue((nodes1.get(0)).getName().equals("TestPage"));
- Set<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
+ Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
assertEquals(3, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -824,7 +823,7 @@
HierarchyNode parent0node = nodes2.get(2);
- Set<HierarchyNode> p0children = parent0node.getChildren();
+ Collection<HierarchyNode> p0children = parent0node.getChildren();
assertEquals(2, p0children.size());
Vector<HierarchyNode> p0 = new Vector<HierarchyNode>();
p0.addAll(p0children);
diff --git a/src/com/atlassian/uwc/hierarchies/DocDirectoryHierarchyTest.java b/src/com/atlassian/uwc/hierarchies/DocDirectoryHierarchyTest.java
index adb7d14..bb09e8d 100644
--- a/src/com/atlassian/uwc/hierarchies/DocDirectoryHierarchyTest.java
+++ b/src/com/atlassian/uwc/hierarchies/DocDirectoryHierarchyTest.java
@@ -1,8 +1,8 @@
package com.atlassian.uwc.hierarchies;
import java.io.File;
+import java.util.Collection;
import java.util.Properties;
-import java.util.Set;
import java.util.Vector;
import junit.framework.TestCase;
@@ -10,7 +10,6 @@
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
-import com.atlassian.uwc.filters.NoSvnFilter;
import com.atlassian.uwc.ui.Page;
public class DocDirectoryHierarchyTest extends TestCase {
@@ -49,7 +48,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
@@ -60,7 +59,7 @@
File file = (File) object;
assertTrue("test.txt".equals(file.getName()));
- Set<HierarchyNode> children2 = nodes1.get(0).getChildren();
+ Collection<HierarchyNode> children2 = nodes1.get(0).getChildren();
assertEquals(3, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
@@ -76,7 +75,7 @@
assertTrue("test1.txt".equals(filea.getName())||
"test2.txt".equals(filea.getName())
);
- Set<HierarchyNode> children3 = node.getChildren();
+ Collection<HierarchyNode> children3 = node.getChildren();
assertEquals(1, children3.size());
Vector<HierarchyNode> nodes3 = new Vector<HierarchyNode>();
nodes3.addAll(children3);
@@ -123,7 +122,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
@@ -152,7 +151,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
@@ -183,7 +182,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> children1 = actual.getChildren();
+ Collection<HierarchyNode> children1 = actual.getChildren();
assertEquals(1, children1.size());
Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
nodes1.addAll(children1);
@@ -194,7 +193,7 @@
File file = (File) object;
assertTrue("test.txt".equals(file.getName()));
- Set<HierarchyNode> children2 = nodes1.get(0).getChildren();
+ Collection<HierarchyNode> children2 = nodes1.get(0).getChildren();
assertEquals(2, children2.size());
Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
nodes2.addAll(children2);
diff --git a/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchy.java b/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchy.java
index be3f380..7479af6 100644
--- a/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchy.java
+++ b/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchy.java
@@ -19,7 +19,8 @@
int newpagescount = 0;
public HierarchyNode buildHierarchy(Collection<Page> pages) {
- getRootNode().setChildrenComparator(dokuComparator());
+// getRootNode().setChildrenComparator(dokuComparator());
+ getRootNode().childrenAsList(true);
log.debug("Number of hierarchy pages: " + pages.size());
//run the filepath hierarchy first -
HierarchyNode node = super.buildHierarchy(pages);
@@ -65,78 +66,12 @@
}
- protected Comparator<HierarchyNode> dokuComparator() {
- return new Comparator<HierarchyNode>() {
- @Override
- public int compare(HierarchyNode o1, HierarchyNode o2) {
- //Step 1: IF OBJ ARE SAME RETURN 0
- if (o1.equals(o2)) {
- log.debug("COMPARATOR: (1 - same object) equivalent obj: " + o1.getName() + " and " + o2.getName());
- return 0;
- }
- //Step 2: HANDLE NULL NAMES
- String name1 = o1.getName();
- String name2 = o2.getName();
- if (name1 == null && name2 == null) return 0;
- if (name1 == null) return -1;
- if (name2 == null) return 1;
- //Step 3: EQUALIVALENT NAMES, check path and spacekey
- if (equalize(name1).equals(equalize(name2))) {
- //check child nodes (null pages might still have children)
- String tree1 = o1.toString();
- String tree2 = o2.toString();
- if (!tree1.equalsIgnoreCase(tree2)) return tree1.compareTo(tree2);
- //check page data: spacekey and path
- if (o1.getPage() != null) {
- //check spacekeys
- String key1 = o1.getPage().getSpacekey();
- String key2 = (o2.getPage() != null)?o2.getPage().getSpacekey():null;
- int compareToKey;
- if (key1 == null && key2 == null) compareToKey = 0;
- else if (key1 == null) return -1;
- else if (key2 == null) return 1;
- else compareToKey = key1.compareTo(key2);
- if (compareToKey == 0) {
- //check pagepath
- String pagepath1 = o1.getPage().getPath();
- String pagepath2 = (o2.getPage() != null)?o2.getPage().getPath():null;
- if (pagepath1 == null && pagepath2 == null) {
- log.debug("COMPARATOR: (2 - no paths) equivalent obj: " + o1.getName() + " and " + o2.getName());
- return 0;
- }
- if (pagepath1 == null) return -1;
- if (pagepath2 == null) return 1;
- if (pagepath1.compareTo(pagepath2) != 0) return pagepath1.compareTo(pagepath2);
- //check page content
- String orig1 = o1.getPage().getOriginalText();
- String orig2 = (o2.getPage() != null)?o2.getPage().getOriginalText():null;
- if (orig1.compareTo(orig2) != 0) {
- String newname = name2+" B";
- o2.setName(newname); //XXX This isn't perfect. Just intended to add some level uniqueness, and hopefully not a lot of these will occur
- o2.getPage().setName(newname);
- log.debug("Found conflicting nodes with different content. Renaming one of them to: " + newname);
- return orig1.compareTo(orig2);
- }
- }
- if (compareToKey == 0)
- log.debug("COMPARATOR: (3 - same key, children, path, content) equivalent obj: " + o1.getName() + " and " + o2.getName());
- return compareToKey;
- }
- else if (o2.getPage() != null) return 1;
- log.debug("COMPARATOR: (4 - no page data) equivalent obj: " + o1.getName() + " and " + o2.getName());
- return 0;
- }
- //Step 4: NOT EQUIVALENT NAME -- FIXME not working for 'Agile Principles, Patterns And Practices In C#'
- return equalize(name1).compareTo(equalize(name2)); //names aren't equal
- }
- };
- }
private HierarchyNode handleSpacekeyBranchWithProp(HierarchyNode node) {
String spacekey = getProperties().getProperty("spacekey");
if (spacekey != null && !"".equals(spacekey)) {
- Set<HierarchyNode> top = node.getChildren();
+ Collection<HierarchyNode> top = node.getChildren();
for (Iterator iter = top.iterator(); iter.hasNext();) {
HierarchyNode topnode = (HierarchyNode) iter.next();
if (topnode.getName().toLowerCase().equals(spacekey.toLowerCase())) {
@@ -150,7 +85,7 @@
}
private HierarchyNode handleSpacekeyBranchWithPage(HierarchyNode root) {
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
Vector<HierarchyNode> ordered = new Vector<HierarchyNode>(top);
for (HierarchyNode topnode : ordered) {
root = handleSpacekeyBranchTop(root, topnode);
@@ -165,27 +100,8 @@
else if (node.getPage().getSpacekey() != null) {
String spacekey = node.getPage().getSpacekey();
node = setAncestorsBySpacekey(root, node, spacekey);
-// if (node.getParent() == null) {
-// Set<HierarchyNode> top = root.getChildren();
-// Vector<HierarchyNode> ordered = new Vector<HierarchyNode>(top);
-// for (HierarchyNode topnode : ordered) {
-// if (topnode.getPage() == null) {
-// log.debug("NULL! (Skipping) topnode.getName() = " + topnode.getName());
-// continue;
-// }
-// if (spacekey.equals(topnode.getPage().getSpacekey())) {
-// Set<HierarchyNode> children = topnode.getChildren();
-// log.debug("Moving topnode: " + topnode.getPage().getName());
-// topnode.setParent(null); //since we have to use iter.remove instead of node.removeChild(topnode)
-// for (HierarchyNode child : children) {
-// root.addChild(child);
-// }
-// break;
-// }
-// }
-// }
}
- Set<HierarchyNode> nextSet = node.getChildren();
+ Collection<HierarchyNode> nextSet = node.getChildren();
Vector<HierarchyNode> ordered = new Vector<HierarchyNode>(nextSet);
for (HierarchyNode next : ordered) {
root = handleSpacekeyBranchTop(root, next);
@@ -278,7 +194,10 @@
newparentpage.setConvertedText(parent.getPage().getConvertedText());
newparent.setPage(newparentpage);
HierarchyNode gparent = parent.getParent();
- parent.removeChild(node);
+ if (!parent.removeChild(node)) {
+// log.debug("tree for parent: " + parent.getName());
+// printTree(parent);
+ }
newparent.addChild(node);
gparent.addChild(newparent);
if (gparent.getName() == null) return;
@@ -286,7 +205,7 @@
}
private void setTopNodeBranch(HierarchyNode root, Iterator topiter, HierarchyNode nexttopnode) {
- Set<HierarchyNode> children = nexttopnode.getChildren();
+ Collection<HierarchyNode> children = nexttopnode.getChildren();
topiter.remove(); //Only allowed way to remove from an iterator.
nexttopnode.setParent(null); //since we have to use iter.remove instead of node.removeChild(topnode)
for (HierarchyNode child : children) {
@@ -295,7 +214,7 @@
}
private HierarchyNode handleHomePages(HierarchyNode node, boolean top) {
- Set<HierarchyNode> children = node.getChildren();
+ Collection<HierarchyNode> children = node.getChildren();
for (Iterator iter = children.iterator(); iter.hasNext();) {
HierarchyNode child = (HierarchyNode) iter.next();
String name = child.getName();
@@ -321,7 +240,7 @@
private HierarchyNode fixCollisions(HierarchyNode node) {
- Set<HierarchyNode> children = node.getChildren();
+ Collection<HierarchyNode> children = node.getChildren();
Vector<HierarchyNode> childrenV = new Vector<HierarchyNode>(children);
for (int i = 0; i < childrenV.size(); i++) {
HierarchyNode child = (HierarchyNode) childrenV.get(i);
@@ -347,16 +266,17 @@
return node;
}
+ private static int numericCollisionCounter = 2;
private HierarchyNode mergeBrokenNodes(HierarchyNode node) {
- Set<HierarchyNode> children = node.getChildren();
+ Collection<HierarchyNode> children = node.getChildren();
Vector<HierarchyNode> childrenV = new Vector<HierarchyNode>(children);
for (int i = 0; i < childrenV.size(); i++) {
HierarchyNode child = (HierarchyNode) childrenV.get(i);
log.debug("Merging child: '" + child.getName()+"'");
HierarchyNode parent = child.getParent();
if (child.getPage() != null && child.getPage().getFile() != null) {
- Set<HierarchyNode> siblingsSet = parent.getChildren();
+ Collection<HierarchyNode> siblingsSet = parent.getChildren();
Vector<HierarchyNode> siblings = new Vector<HierarchyNode>();
for (HierarchyNode s : siblingsSet) {
if (!s.equals(child)) {
@@ -372,6 +292,12 @@
mergeTwoNodes(child, sibling, parent);
}
}
+ else if (child.getName().equalsIgnoreCase(sibling.getName())) {
+ String newname = sibling.getName() + " " + numericCollisionCounter++;
+ log.debug("Found conflicting node. Changing name to: '"+ newname + "'");
+ sibling.setName(newname);
+ sibling.getPage().setName(newname);
+ }
}
}
// log.debug("***v");
@@ -389,9 +315,12 @@
// log.debug("adding child: " + gchild.getName());
first.addChild(gchild);
}
- if (parent != null) parent.removeChild(second);
-// log.debug("parent tree - 1 depth");
-// printTreeOneLevel(parent);
+ if (parent != null) {
+ if (!parent.removeChild(second)) {
+// log.debug("parent tree");
+// printTree(parent);
+ }
+ }
// log.debug("child tree");
// printTreeOneLevel(first);
}
@@ -413,6 +342,7 @@
log.debug("first node name: " + first.getName() + " and full file path: " + first.getPage().getFile().getAbsolutePath());
log.debug("filename of first node: " + filename + " and equalized: " + equalize(filename));
log.debug("second node name: " + second.getName() + " and equalized: " + equalize(second.getName()));
+ log.debug("first spacekey " + first.getPage().getSpacekey() + " ... second spacekey " + ((second.getPage()!=null)?second.getPage().getSpacekey():"null"));
}
return samenode;
}
@@ -426,7 +356,7 @@
log.debug("Attempting to identify meta name for parent title.");
HierarchyNode gparent = child.getParent().getParent();
if (gparent == null) return basename;
- Set<HierarchyNode> siblingsSet = gparent.getChildren();
+ Collection<HierarchyNode> siblingsSet = gparent.getChildren();
Vector<HierarchyNode> siblings = new Vector<HierarchyNode>(siblingsSet);
for (int i = 0; i < siblings.size(); i++) {
HierarchyNode sibling = (HierarchyNode) siblings.get(i);
@@ -472,7 +402,7 @@
}
private HierarchyNode attachAllImages(HierarchyNode node, Vector<File> attdirs, boolean top) {
- Set<HierarchyNode> children = node.getChildren();
+ Collection<HierarchyNode> children = node.getChildren();
for (Iterator iter = children.iterator(); iter.hasNext();) {
HierarchyNode child = (HierarchyNode) iter.next();
String name = getOrigChildName(child);
@@ -575,7 +505,7 @@
HierarchyTitleConverter titleConverter = new HierarchyTitleConverter();
//nodes without pages probably will need this
private HierarchyNode fixTitles(HierarchyNode node) {
- Set<HierarchyNode> children = node.getChildren();
+ Collection<HierarchyNode> children = node.getChildren();
for (Iterator iter = children.iterator(); iter.hasNext();) {
HierarchyNode child = (HierarchyNode) iter.next();
if (child.getPage() == null)
@@ -610,7 +540,7 @@
}
public void combineHomepages() {
- Set<HierarchyNode> children = currentParent.getChildren();
+ Collection<HierarchyNode> children = currentParent.getChildren();
Vector<HierarchyNode> all = new Vector<HierarchyNode>(children);
HierarchyNode first = null, second = null;
for (int i = 0; i < all.size()-1 && all.size() > 1; i++) {
@@ -675,7 +605,7 @@
printTree(node.getChildren(), "");
}
- private void printTree(Set<HierarchyNode> children, String delim) {
+ private void printTree(Collection<HierarchyNode> children, String delim) {
for (HierarchyNode child : children) {
String newdelim = delim + " .";
String childdata = child.getName();
@@ -687,7 +617,7 @@
}
private void printTreeOneLevel(HierarchyNode node) {
- Set<HierarchyNode> children = node.getChildren();
+ Collection<HierarchyNode> children = node.getChildren();
for (HierarchyNode child : children) {
log.debug("PRINTTREE: " + child.getName());
}
diff --git a/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchyTest.java b/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchyTest.java
index d53f184..e46f49c 100644
--- a/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchyTest.java
+++ b/src/com/atlassian/uwc/hierarchies/DokuwikiHierarchyTest.java
@@ -56,7 +56,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(5, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
@@ -142,7 +142,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(5, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
@@ -188,7 +188,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(5, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
@@ -257,7 +257,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(3, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
@@ -336,7 +336,7 @@
// assertNull(root.getParent());
// assertNotNull(root.getChildren());
//
-// Set<HierarchyNode> top = root.getChildren();
+// Collection<HierarchyNode> top = root.getChildren();
// assertEquals(6, top.size());
// Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
// nodes0.addAll(top);
@@ -426,7 +426,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(5, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
@@ -479,7 +479,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(2, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
@@ -558,7 +558,7 @@
assertNull(root.getParent());
assertNotNull(root.getChildren());
- Set<HierarchyNode> top = root.getChildren();
+ Collection<HierarchyNode> top = root.getChildren();
assertEquals(2, top.size());
Vector<HierarchyNode> nodes0 = new Vector<HierarchyNode>();
nodes0.addAll(top);
diff --git a/src/com/atlassian/uwc/hierarchies/FilenameHierarchyTest.java b/src/com/atlassian/uwc/hierarchies/FilenameHierarchyTest.java
index 859b438..86cc4e8 100644
--- a/src/com/atlassian/uwc/hierarchies/FilenameHierarchyTest.java
+++ b/src/com/atlassian/uwc/hierarchies/FilenameHierarchyTest.java
@@ -1,9 +1,8 @@
package com.atlassian.uwc.hierarchies;
import java.io.File;
-import java.util.Comparator;
+import java.util.Collection;
import java.util.Properties;
-import java.util.Set;
import java.util.Vector;
import junit.framework.TestCase;
@@ -39,7 +38,7 @@
HierarchyNode actual = tester.buildHierarchy(pages);
assertNotNull(actual);
- Set<HierarchyNode> nodes = actual.getChildren();
+ Collection<HierarchyNode> nodes = actual.getChildren();
assertNotNull(nodes);
assertEquals(1, nodes.size());
for (HierarchyNode root : nodes) {
@@ -62,7 +61,7 @@
HierarchyNode actual = tester.buildHierarchy(pages);
assertNotNull(actual);
- Set<HierarchyNode> nodes = actual.getChildren();
+ Collection<HierarchyNode> nodes = actual.getChildren();
assertNotNull(nodes);
assertEquals(1, nodes.size());
for (HierarchyNode root : nodes) {
@@ -89,7 +88,7 @@
HierarchyNode actual = tester.buildHierarchy(pages);
assertNotNull(actual);
- Set<HierarchyNode> nodes = actual.getChildren();
+ Collection<HierarchyNode> nodes = actual.getChildren();
assertNotNull(nodes);
assertEquals(1, nodes.size());
for (HierarchyNode root : nodes) {
@@ -122,7 +121,7 @@
HierarchyNode actual = tester.buildHierarchy(pages);
assertNotNull(actual);
- Set<HierarchyNode> nodes = actual.getChildren();
+ Collection<HierarchyNode> nodes = actual.getChildren();
assertNotNull(nodes);
assertEquals(1, nodes.size());
for (HierarchyNode root : nodes) {
@@ -244,7 +243,7 @@
pages.add(page);
}
- private Vector<HierarchyNode> asVector(Set<HierarchyNode> children) {
+ private Vector<HierarchyNode> asVector(Collection<HierarchyNode> children) {
Vector<HierarchyNode> nodes = new Vector<HierarchyNode>();
nodes.addAll(children);
return nodes;
diff --git a/src/com/atlassian/uwc/hierarchies/FilepathHierarchy.java b/src/com/atlassian/uwc/hierarchies/FilepathHierarchy.java
index 6102e31..95a840e 100644
--- a/src/com/atlassian/uwc/hierarchies/FilepathHierarchy.java
+++ b/src/com/atlassian/uwc/hierarchies/FilepathHierarchy.java
@@ -173,7 +173,7 @@
log.debug("...... checking parent '" + parent.getName() + "' has relationship with '" + childname + "'");
boolean relationship = false;
- Set<HierarchyNode> children = parent.getChildren();
+ Collection<HierarchyNode> children = parent.getChildren();
if (children == null || children.isEmpty()) {
log.debug("...... -> parent has no children");
return false;
@@ -226,7 +226,7 @@
*/
protected HierarchyNode getChildNode(HierarchyNode parent, String childname) {
log.debug("...... Getting child node with name: " + childname);
- Set<HierarchyNode> children = parent.getChildren();
+ Collection<HierarchyNode> children = (Collection<HierarchyNode>) parent.getChildren();
if (children == null || children.isEmpty()) {
log.debug("...... -> parent has no children. Returning null.");
return null;
diff --git a/src/com/atlassian/uwc/hierarchies/FilepathHierarchyTest.java b/src/com/atlassian/uwc/hierarchies/FilepathHierarchyTest.java
index 7214176..9ef0f54 100644
--- a/src/com/atlassian/uwc/hierarchies/FilepathHierarchyTest.java
+++ b/src/com/atlassian/uwc/hierarchies/FilepathHierarchyTest.java
@@ -5,7 +5,6 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
-import java.util.Set;
import java.util.Vector;
import junit.framework.TestCase;
@@ -13,7 +12,6 @@
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
-import com.atlassian.uwc.converters.jotspot.TitleConverter;
import com.atlassian.uwc.filters.NoSvnFilter;
import com.atlassian.uwc.ui.Page;
@@ -80,7 +78,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> level1ChildSet = actual.getChildren();
+ Collection<HierarchyNode> level1ChildSet = actual.getChildren();
assertEquals(2, level1ChildSet.size());
Vector<HierarchyNode> level1Children = new Vector<HierarchyNode>();
level1Children.addAll(level1ChildSet);
@@ -127,7 +125,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> level1ChildSet = actual.getChildren();
+ Collection<HierarchyNode> level1ChildSet = actual.getChildren();
assertEquals(2, level1ChildSet.size());
Vector<HierarchyNode> level1Children = new Vector<HierarchyNode>();
level1Children.addAll(level1ChildSet);
@@ -175,7 +173,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> level1ChildSet = actual.getChildren();
+ Collection<HierarchyNode> level1ChildSet = actual.getChildren();
assertEquals(2, level1ChildSet.size());
Vector<HierarchyNode> level1Children = new Vector<HierarchyNode>();
level1Children.addAll(level1ChildSet);
@@ -600,7 +598,7 @@
HierarchyNode root = tester.buildHierarchy(pages);
assertNotNull(root);
assertEquals(6, root.countDescendants());
- Set<HierarchyNode> level1 = root.getChildren();
+ Collection<HierarchyNode> level1 = root.getChildren();
assertNotNull(level1);
assertEquals(2, level1.size());
for (HierarchyNode lvl1Node : level1) {
@@ -611,7 +609,7 @@
else if ("Drink.txt".equals(lvl1Node.getName())) fail("Still have Drink node");
else if ("Comestibles".equals(lvl1Node.getName())) {
assertEquals(3, lvl1Node.countDescendants());
- Set<HierarchyNode> level2 = lvl1Node.getChildren();
+ Collection<HierarchyNode> level2 = lvl1Node.getChildren();
assertNotNull(level2);
assertEquals(2, level2.size());
for (HierarchyNode lvl2Node : level2) {
@@ -622,7 +620,7 @@
}
else if ("Liquid".equals(lvl1Node.getName())) {
assertEquals(2, lvl1Node.countDescendants());
- Set<HierarchyNode> level2 = lvl1Node.getChildren();
+ Collection<HierarchyNode> level2 = lvl1Node.getChildren();
assertNotNull(level2);
assertEquals(1, level2.size());
for (HierarchyNode lvl2Node : level2) {
@@ -648,19 +646,19 @@
HierarchyNode root = tester.buildHierarchy(pages);
assertNotNull(root);
assertEquals(6, root.countDescendants());
- Set<HierarchyNode> level1 = root.getChildren();
+ Collection<HierarchyNode> level1 = root.getChildren();
assertNotNull(level1);
assertEquals(1, level1.size());
for (HierarchyNode lvl1Node : level1) {
assertNotNull(lvl1Node);
if (lvl1Node.getName().endsWith("_subpages")) fail("Still have subpages dir node.");
assertEquals(5, lvl1Node.countDescendants());
- Set<HierarchyNode> level2 = lvl1Node.getChildren();
+ Collection<HierarchyNode> level2 = lvl1Node.getChildren();
assertNotNull(level2);
assertEquals(1, level2.size());
for (HierarchyNode lvl2Node : level2) {
if (lvl2Node.getName().endsWith("_subpages")) fail("Still have subpages dir node.");
- Set<HierarchyNode> level3 = lvl2Node.getChildren();
+ Collection<HierarchyNode> level3 = lvl2Node.getChildren();
assertNotNull(level3);
assertEquals(3, level3.size());
}
@@ -701,7 +699,7 @@
assertNull(actual.getParent());
assertNotNull(actual.getChildren());
- Set<HierarchyNode> level1ChildSet = actual.getChildren();
+ Collection<HierarchyNode> level1ChildSet = actual.getChildren();
assertEquals(1, level1ChildSet.size());
assertEquals("sampleData.txt", level1ChildSet.iterator().next().getName());
@@ -771,7 +769,7 @@
HierarchyNode rootnode = tester.buildHierarchy(pages);
assertNull(rootnode.getPage());
- Set<HierarchyNode> actualrootnodeSet = rootnode.getChildren();
+ Collection<HierarchyNode> actualrootnodeSet = rootnode.getChildren();
HierarchyNode actualRootNode = null;
for (HierarchyNode next : actualrootnodeSet) {
actualRootNode = next;
@@ -781,7 +779,7 @@
assertNotNull(actualRoot);
assertEquals("Root", actualRoot.getName());
- Set<HierarchyNode> children = actualRootNode.getChildren();
+ Collection<HierarchyNode> children = actualRootNode.getChildren();
for (HierarchyNode childnode : children) {
Page childpage = childnode.getPage();
assertNotNull(childpage);
diff --git a/src/com/atlassian/uwc/hierarchies/HierarchyNode.java b/src/com/atlassian/uwc/hierarchies/HierarchyNode.java
index 3c2161f..154b81a 100644
--- a/src/com/atlassian/uwc/hierarchies/HierarchyNode.java
+++ b/src/com/atlassian/uwc/hierarchies/HierarchyNode.java
@@ -1,10 +1,13 @@
package com.atlassian.uwc.hierarchies;
+import java.util.Collection;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.List;
import java.util.Set;
import java.util.TreeSet;
+import java.util.Vector;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -21,8 +24,9 @@
private String name;
private Page page;
private HierarchyNode parent;
- private Set<HierarchyNode> children;
+ private Collection<HierarchyNode> children;
private static Comparator childrenComparator;
+ private static boolean childrenAsList = false;
Logger log = Logger.getLogger(this.getClass());
@@ -66,20 +70,21 @@
*
* @param child The child to be removed. Must not be <code>null</code>.
*/
- public void removeChild(HierarchyNode child) {
+ public boolean removeChild(HierarchyNode child) {
if (child == null) {
throw new IllegalArgumentException("The parameter must not be null!");
}
- if (children != null && children.contains(child)) {
- children.remove(child);
+ if (getChildren().remove(child)) {
log.debug("Removed: '" + child.getName() + "' from " + this.getName());
if (children.size() == 0) {
children = null;
}
child.setParent(null);
+ return true;
}
else {
log.debug("Unable to remove this child: " + child.getName());
+ return false;
}
}
@@ -101,9 +106,12 @@
* @return A set of child nodes, or an empty set if
* this node has no children.
*/
- public Set<HierarchyNode> getChildren() {
+ public Collection<HierarchyNode> getChildren() {
if (this.children == null) {
- if (childrenComparator == null)
+ if (childrenAsList) {
+ this.children = new Vector<HierarchyNode>();
+ }
+ else if (childrenComparator == null)
this.children = new HashSet<HierarchyNode>();
else //if you want to be able to control the child sort order
this.children = new TreeSet<HierarchyNode>(childrenComparator);
@@ -120,7 +128,7 @@
return children == null ? null : children.iterator();
}
- public void setChildren(Set<HierarchyNode> children) {
+ public void setChildren(Collection<HierarchyNode> children) {
this.children = children;
}
@@ -226,14 +234,14 @@
return i;
}
- public String toString() {
- return treeAsString(this);
- }
- private String treeAsString(HierarchyNode node) {
+// public String toString() {
+// return treeAsString(this);
+// }
+ public String treeAsString(HierarchyNode node) {
return treeAsString(node.getChildren(), "");
}
- private String treeAsString(Set<HierarchyNode> children, String delim) {
+ private String treeAsString(Collection<HierarchyNode> children, String delim) {
String msg = "";
for (HierarchyNode child : children) {
String newdelim = delim + " .";
@@ -242,4 +250,8 @@
}
return msg;
}
+
+ public static void childrenAsList(boolean aslist) {
+ childrenAsList = aslist;
+ }
}
diff --git a/src/com/atlassian/uwc/hierarchies/SmfHierarchy.java b/src/com/atlassian/uwc/hierarchies/SmfHierarchy.java
index 14fb305..d6c0058 100644
--- a/src/com/atlassian/uwc/hierarchies/SmfHierarchy.java
+++ b/src/com/atlassian/uwc/hierarchies/SmfHierarchy.java
@@ -10,7 +10,6 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.Properties;
-import java.util.Set;
import java.util.Vector;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -215,7 +214,7 @@
Boolean.parseBoolean(this.getProperties().getProperty(PROPKEY_COMMENTS))) {
Vector<HierarchyNode> topicNodes = getTopicNodes(root);
for (HierarchyNode topic : topicNodes) {
- Set<HierarchyNode> children = topic.getChildren();
+ Collection<HierarchyNode> children = topic.getChildren();
for (Iterator iter = children.iterator(); iter.hasNext();) {
HierarchyNode reply = (HierarchyNode) iter.next();
String comment = createComment(reply.getName());
diff --git a/src/com/atlassian/uwc/ui/ConverterEngine.java b/src/com/atlassian/uwc/ui/ConverterEngine.java
index e545a73..ac7c1d6 100644
--- a/src/com/atlassian/uwc/ui/ConverterEngine.java
+++ b/src/com/atlassian/uwc/ui/ConverterEngine.java
@@ -2145,11 +2145,12 @@
if (!(page instanceof VersionPage) && page.getFile() != null) {
log.debug("Original Filepath: " + page.getFile().getAbsolutePath());
}
+ String tmpspacekey = (page.getSpacekey()!=null)?page.getSpacekey():confSettings.spaceKey;
if (page.isBlog()) {
- log.debug("Attempting to send blog: " + page.getName() + " to space: " + confSettings.spaceKey);
+ log.debug("Attempting to send blog: " + page.getName() + " to space: " + tmpspacekey);
id = sendBlog(broker, pageTable, confSettings);
} else {
- log.debug("Attempting to send page: " + page.getName() + " to space: " + confSettings.spaceKey);
+ log.debug("Attempting to send page: " + page.getName() + " to space: " + tmpspacekey);
id = sendPage(broker, pageTable, confSettings);
}
if (id == null) return null;
@@ -2545,22 +2546,22 @@
* @param fileName
* @return
*/
- protected boolean alreadyAttached(String fileName) {
- if (this.attachedFiles == null || this.attachedFiles.isEmpty())
- return false;
- Iterator <String>it=attachedFiles.iterator();
- while (it.hasNext())
- {
- String item=it.next();
- int index=item.lastIndexOf(fileName);
- if (index < 0)
- continue;
- if (item.length() - index == fileName.length())
- return true;
- }
- return false;
-
- }
+// protected boolean alreadyAttached(String fileName) {
+// if (this.attachedFiles == null || this.attachedFiles.isEmpty())
+// return false;
+// Iterator <String>it=attachedFiles.iterator();
+// while (it.hasNext())
+// {
+// String item=it.next();
+// int index=item.lastIndexOf(fileName);
+// if (index < 0)
+// continue;
+// if (item.length() - index == fileName.length())
+// return true;
+// }
+// return false;
+//
+// }
protected boolean orphanAlreadyAttached(File file) {
if (this.attachedPaths == null) return false;