Author: maartenc
Date: Wed Feb 20 12:31:13 2008
New Revision: 629603

URL: http://svn.apache.org/viewvc?rev=629603&view=rev
Log:
Made this class JDK 1.4 compatible

Modified:
    ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/m2/PomReader.java

Modified: 
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/m2/PomReader.java
URL: 
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/m2/PomReader.java?rev=629603&r1=629602&r2=629603&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/m2/PomReader.java 
(original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/m2/PomReader.java 
Wed Feb 20 12:31:13 2008
@@ -177,7 +177,7 @@
         }
     }
     
-    public Iterable/* <PomDependencyData> */ getDependencies() {
+    public List /* <PomDependencyData> */ getDependencies() {
         Element dependenciesElement = getFirstChildElement(projectElement, 
DEPENDENCIES);
         LinkedList dependencies = new LinkedList();
         if (dependenciesElement != null) {
@@ -193,7 +193,7 @@
     }
     
 
-    public Iterable/* <PomDependencyMgt> */ getDependencyMgt() {
+    public List /* <PomDependencyMgt> */ getDependencyMgt() {
         Element dependenciesElement = getFirstChildElement(projectElement, 
DEPENDENCY_MGT);
         dependenciesElement = getFirstChildElement(dependenciesElement, 
DEPENDENCIES);
         LinkedList dependencies = new LinkedList();
@@ -260,7 +260,7 @@
             return getFirstChildElement(depElement, OPTIONAL) != null;
         }
         
-        public Iterable/*<ModuleId>*/ getExcludedModules() {
+        public List /*<ModuleId>*/ getExcludedModules() {
             Element exclusionsElement = getFirstChildElement(depElement, 
EXCLUSIONS);
             LinkedList exclusions = new LinkedList();
             if (exclusionsElement != null) {
@@ -290,7 +290,7 @@
         }
         for (Iterator it = getAllChilds(propsEl).iterator(); it.hasNext();) {
             Element prop = (Element) it.next();
-            pomProperties.put(prop.getNodeName(), prop.getTextContent());
+            pomProperties.put(prop.getNodeName(), getTextContent(prop));
         }
         return pomProperties;
     }
@@ -304,18 +304,32 @@
         }
     }
 
-    
+    private static String getTextContent(Element element) {
+        StringBuffer result = new StringBuffer();
+        
+        NodeList childNodes = element.getChildNodes();
+        for (int i = 0; i < childNodes.getLength(); i++) {
+            Node child = childNodes.item(i);
+            
+            switch (child.getNodeType()) {
+                case Node.CDATA_SECTION_NODE:
+                case Node.TEXT_NODE:
+                    result.append(child.getNodeValue());
+                    break;
+            }
+        }
+        
+        return result.toString();
+    }
     
     private static String getFirstChildText(Element parentElem, String name) {
         Element node = getFirstChildElement(parentElem, name);
         if (node != null) {
-            node.normalize();
-            return node.getTextContent();
+            return getTextContent(node);
         } else {
             return null;
         }
     }
-
 
     private static Element getFirstChildElement(Element parentElem, String 
name) {
         if (parentElem == null) {


Reply via email to