From b50848acbae81898bb10c59495c089c2697adde4 Mon Sep 17 00:00:00 2001 From: Sam Ruby Date: Wed, 14 Jun 2000 12:42:14 +0000 Subject: [PATCH] Javadoc 1.2 multiple group support Submitted by: Donald Leslie git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@267676 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/tools/ant/taskdefs/Javadoc.java | 26 +++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/main/org/apache/tools/ant/taskdefs/Javadoc.java b/src/main/org/apache/tools/ant/taskdefs/Javadoc.java index 77727a7f9..dc356c02d 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Javadoc.java +++ b/src/main/org/apache/tools/ant/taskdefs/Javadoc.java @@ -366,10 +366,32 @@ public class Javadoc extends Exec { argList.addElement("-linkoffline"); argList.addElement(linkoffline); } + + // Javadoc 1.2 rules: + // Multiple -group args allowed. + // Each arg includes 3 strings: -group [name] [packagelist]. + // Elements in [packagelist] are colon-delimited. + // An element in [packagelist] may end with the * wildcard. + + // Ant javadoc task rules for group attribute: + // Args are comma-delimited. + // Each arg is 2 space-delimited strings. + // E.g., group="XSLT_Packages org.apache.xalan.xslt*,XPath_Packages orgapache.xalan.xpath*" if (group != null) { - argList.addElement("-group"); - argList.addElement(group); + StringTokenizer tok = new StringTokenizer(group, ",", false); + while (tok.hasMoreTokens()) { + String grp = tok.nextToken().trim(); + int space = grp.indexOf(" "); + if (space > 0){ + String name = grp.substring(0, space); + String pkgList = grp.substring(space + 1); + argList.addElement("-group"); + argList.addElement(name); + argList.addElement(pkgList); + } + } } + if (stylesheetfile != null) { argList.addElement("-stylesheetfile"); argList.addElement(stylesheetfile.getAbsolutePath());