On Wed, Feb 20, 2008 at 9:31 PM, <[EMAIL PROTECTED]> wrote:
> 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();
> + }
Maybe this could go in XMLHelper instead? With a comment telling it
corresponds to Node#getTextContent() from DOM level 3?
Xavier
>
>
> 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) {
>
>
>
--
Xavier Hanin - Independent Java Consultant
http://xhab.blogspot.com/
http://ant.apache.org/ivy/
http://www.xoocode.org/