Title: [552] trunk/qdox/src/test/com/thoughtworks/qdox: sub packages
Revision
552
Author
paul
Date
2009-02-16 17:20:28 -0600 (Mon, 16 Feb 2009)

Log Message

sub packages

Modified Paths


Diff

Modified: trunk/qdox/src/java/com/thoughtworks/qdox/model/JavaPackage.java (551 => 552)

--- trunk/qdox/src/java/com/thoughtworks/qdox/model/JavaPackage.java	2009-02-16 23:06:57 UTC (rev 551)
+++ trunk/qdox/src/java/com/thoughtworks/qdox/model/JavaPackage.java	2009-02-16 23:20:28 UTC (rev 552)
@@ -3,6 +3,8 @@
 import java.util.List;
 import java.util.ArrayList;
 import java.util.Map;
+import java.util.Iterator;
+import java.util.Set;
 
 
 public class JavaPackage extends AbstractBaseJavaEntity {
@@ -64,6 +66,19 @@
         return (JavaPackage) allPackages.get(parentName);
     }
 
+    public JavaPackage[] getSubPackages() {
+        String expected = name + ".";
+        Set packageKeys = allPackages.keySet();
+        List retList = new ArrayList();
+        for (Iterator iterator = packageKeys.iterator(); iterator.hasNext();) {
+            String pName = (String) iterator.next();
+            if (pName.startsWith(expected) && !pName.substring(expected.length()).contains(".")) {
+                retList.add(allPackages.get(pName));
+            }
+        }
+        return (JavaPackage[]) retList.toArray(new JavaPackage[retList.size()]);
+    }
+
     public boolean equals(Object o) {
         if (this == o) return true;
         if (o == null || getClass() != o.getClass()) return false;

Modified: trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java (551 => 552)

--- trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java	2009-02-16 23:06:57 UTC (rev 551)
+++ trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java	2009-02-16 23:20:28 UTC (rev 552)
@@ -124,6 +124,11 @@
         assertEquals("Thing", classes[1].getName());
         assertEquals(comBlah, comBlahSubpackage.getParentPackage());
         assertNull(comBlah.getParentPackage());
+        JavaPackage[] comBlahSubpackages = comBlah.getSubPackages();
+        assertEquals(1, comBlahSubpackages.length);
+        assertEquals(comBlahSubpackage, comBlahSubpackages[0]);
+        JavaPackage[] comBlahSubpackageSubpackages = comBlahSubpackage.getSubPackages();
+        assertEquals(0, comBlahSubpackageSubpackages.length);
     }
 
     private String createOuter() {


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to