exit();
}
setDocletInvoker(as);
ListBuffer listbuffer1 = new ListBuffer();
ListBuffer listbuffer2 = new ListBuffer();
Options options1 = Options.instance(context);
boolean flag = false;
for (int i = 0; i < as.length; i++) {
String s = as[i];
if (s.equals("-subpackages")) {
oneArg(as, i++);
addToList(listbuffer1, as[i]);
continue;
}
if (s.equals("-exclude")) {
oneArg(as, i++);
addToList(listbuffer2, as[i]);
continue;
}
if (s.equals("-verbose")) {
setOption(s);
options1.put("-verbose", "");
continue;
}
if (s.equals("-encoding")) {
oneArg(as, i++);
encoding = as[i];
options1.put("-encoding", as[i]);
continue;
}
if (s.equals("-breakiterator")) {
breakiterator = true;
setOption("-breakiterator");
continue;
}
if (s.equals("-help")) {
usage();
exit();
continue;
}
if (s.equals("-Xclasses")) {
setOption(s);
flag = true;
continue;
}
if (s.equals("-Xwerror")) {
setOption(s);
rejectWarnings = true;
continue;
}
if (s.equals("-private")) {
setOption(s);
setFilter(-9223372036854775801L);
continue;
}
if (s.equals("-package")) {
setOption(s);
setFilter(-9223372036854775803L);
continue;
}
if (s.equals("-protected")) {
setOption(s);
setFilter(5L);
continue;
}
if (s.equals("-public")) {
setOption(s);
setFilter(1L);
continue;
}
if (s.equals("-source")) {
oneArg(as, i++);
if (options1.get("-source") != null)
usageError("main.option.already.seen", s);
options1.put("-source", as[i]);
continue;
}
if (s.equals("-gj")) {
options1.put("-gj", "-gj");
continue;
}
if (s.equals("-prompt")) {
options1.put("-prompt", "-prompt");
messager.promptOnError = true;
continue;
}
if (s.equals("-sourcepath")) {
oneArg(as, i++);
if (options1.get("-sourcepath") != null)
usageError("main.option.already.seen", s);
options1.put("-sourcepath", as[i]);
continue;
}
if (s.equals("-classpath")) {
oneArg(as, i++);
if (options1.get("-classpath") != null)
usageError("main.option.already.seen", s);
options1.put("-classpath", as[i]);
continue;
}
if (s.equals("-sysclasspath")) {
oneArg(as, i++);
if (options1.get("-bootclasspath") != null)
usageError("main.option.already.seen", s);
options1.put("-bootclasspath", as[i]);
continue;
}
if (s.equals("-bootclasspath")) {
oneArg(as, i++);
if (options1.get("-bootclasspath") != null)
usageError("main.option.already.seen", s);
options1.put("-bootclasspath", as[i]);
continue;
}
if (s.equals("-extdirs")) {
oneArg(as, i++);
if (options1.get("-extdirs") != null)
usageError("main.option.already.seen", s);
options1.put("-extdirs", as[i]);
continue;
}
if (s.equals("-overview")) {
oneArg(as, i++);
continue;
}
if (s.equals("-doclet")) {
i++;
continue;
}
if (s.equals("-docletpath")) {
i++;
continue;
}
if (s.equals("-locale")) {
if (i != 0)
usageError("main.locale_first");
oneArg(as, i++);
docLocale = as[i];
continue;
}
if (s.startsWith("-XD")) {
String s1 = s.substring("-XD".length());
int k = s1.indexOf('=');
String s2 = k >= 0 ? s1.substring(0, k) : s1;
String s3 = k >= 0 ? s1.substring(k + 1) : s1;
options1.put(s2, s3);
continue;
}
if (s.startsWith("-")) {
int j = docletInvoker.optionLength(s);
if (j < 0) {
exit();
continue;
}
if (j == 0) {
usageError("main.invalid_flag", s);
continue;
}
if (i + j > as.length)
usageError("main.requires_argument", s);
ListBuffer listbuffer3 = new ListBuffer();
for (int i1 = 0; i1 < j - 1; i1++)
listbuffer3.append(as[++i]);
setOption(s, listbuffer3.toList());
} else {
listbuffer.append(s);
}
}
if (listbuffer.isEmpty() && listbuffer1.isEmpty())
usageError("main.No_packages_or_classes_specified");
if (!docletInvoker.validOptions(options.toList()))
exit();
JoodocTool joodocTool = new JoodocTool(messager);
if (joodocTool == null)
return false;
if (showAccess == null)
setFilter(defaultFilter);
net.jangaroo.joodoc.RootDocImpl rootdocimpl = joodocTool.getRootDocImpl(docLocale, encoding, showAccess, listbuffer.toList(), options.toList(), breakiterator, listbuffer1.toList(), listbuffer2.toList(), flag);
boolean flag1 = rootdocimpl != null;
if (flag1)
flag1 = docletInvoker.start(rootdocimpl);
if (options1.get("-verbose") != null) {
l = System.currentTimeMillis() - l;
messager.notice("main.done_in", Long.toString(l));
}
return flag1;
}