home *** CD-ROM | disk | FTP | other *** search
- package sun.tools.javadoc;
-
- import java.io.PrintWriter;
- import java.lang.reflect.Modifier;
- import java.util.Date;
- import java.util.Enumeration;
- import java.util.Hashtable;
- import java.util.Vector;
- import sun.tools.java.ClassDeclaration;
- import sun.tools.java.ClassDefinition;
- import sun.tools.java.ClassNotFound;
- import sun.tools.java.Constants;
- import sun.tools.java.FieldDefinition;
- import sun.tools.java.Identifier;
- import sun.tools.java.Type;
- import sun.tools.tree.LocalField;
-
- class HTMLDocumentationGenerator extends DocumentationGenerator implements Constants {
- ClassDeclaration currentClass;
- Vector allFields = new Vector();
- static final String InterfaceIndexImage = imgString("interface-index.gif", 257, 38, "Interface Index");
- static final String ClassIndexImage = imgString("class-index.gif", 216, 37, "Class Index");
- static final String ExceptionIndexImage = imgString("exception-index.gif", 284, 38, "Exception Index");
- static final String ErrorIndexImage = imgString("error-index.gif", 174, 38, "Error Index");
- static final int C_VARIABLE = 0;
- static final int C_CONSTRUCTOR = 1;
- static final int C_METHOD = 2;
- static String[] indexImages = new String[]{imgString("variable-index.gif", 207, 38, "Variable Index"), imgString("constructor-index.gif", 275, 38, "Constructor Index"), imgString("method-index.gif", 207, 38, "Method Index")};
- static final String staticVariableIndexImage = imgString("blue-ball-small.gif", 6, 6, " o ");
- static final String dynamicVariableIndexImage = imgString("magenta-ball-small.gif", 6, 6, " o ");
- static final String constructorIndexImage = imgString("yellow-ball-small.gif", 6, 6, " o ");
- static final String staticMethodIndexImage = imgString("green-ball-small.gif", 6, 6, " o ");
- static final String dynamicMethodIndexImage = imgString("red-ball-small.gif", 6, 6, " o ");
- static String[] docImages = new String[]{imgString("variables.gif", 153, 38, "Variables"), imgString("constructors.gif", 231, 38, "Constructors"), imgString("methods.gif", 151, 38, "Methods")};
- static String[] docAnchors = new String[]{"variables", "constructors", "methods"};
- static final String staticVariableDocImage = imgString("blue-ball.gif", 12, 12, " o ");
- static final String dynamicVariableDocImage = imgString("magenta-ball.gif", 12, 12, " o ");
- static final String constructorDocImage = imgString("yellow-ball.gif", 12, 12, " o ");
- static final String staticMethodDocImage = imgString("green-ball.gif", 12, 12, " o ");
- static final String dynamicMethodDocImage = imgString("red-ball.gif", 12, 12, " o ");
- static Date today = new Date();
-
- void genPackagesDocumentation(String[] var1, String[] var2) {
- System.out.println(Main.getText("html.Generating_packages.html"));
- PrintWriter var3 = DocumentationGenerator.openFile("packages.html");
- this.htmlStart(var3, "Package Index");
- var3.print("<pre>");
- var3.print(this.refString("API_users_guide.html", "API User's Guide"));
- var3.print(" ");
- var3.print(this.refString("tree.html", "Class Hierarchy"));
- var3.print(" ");
- var3.print(this.refString("AllNames.html", "Index"));
- var3.print("</pre>");
- var3.println("<hr>");
- var3.println("<h1>");
- var3.println(imgString("package-index.gif", 238, 37, "Package Index"));
- var3.println("</h1>");
- if (var1 != null) {
- var3.println("<h2> " + Main.getText("html.Generating_packages.all") + " </h2>");
- var3.println("<menu>");
-
- for(int var4 = 0; var4 < var1.length; ++var4) {
- String var5 = var1[var4];
- Identifier var6 = Identifier.lookup(var5);
- var3.println("<li> " + Main.getText("html.Generating_packages.package", this.pkgString(var6, var5)));
- }
-
- var3.println("</menu>");
- }
-
- if (var2 != null) {
- var3.println("<h2> " + Main.getText("html.Generating_packages.other") + " </h2>");
- var3.println("<menu>");
-
- for(int var7 = 0; var7 < var2.length; ++var7) {
- String var8 = var2[var7];
- Identifier var9 = Identifier.lookup(var8);
- var3.println("<li> package " + this.pkgString(var9, var8));
- }
-
- var3.println("</menu>");
- }
-
- htmlEnd(var3);
- }
-
- void genPackageDocumentation(Identifier var1, ClassDeclaration[] var2, ClassDeclaration[] var3, ClassDeclaration[] var4, ClassDeclaration[] var5) {
- PrintWriter var6 = DocumentationGenerator.openFile("Package-" + var1.toString() + ".html");
- this.htmlStart(var6, "Package " + var1);
- var6.print("<pre>");
- var6.print(this.refString("packages.html", "All Packages"));
- var6.print(" ");
- var6.print(this.refString("tree.html", "Class Hierarchy"));
- var6.print(" ");
- var6.print(this.refString("AllNames.html", "Index"));
- var6.println("</pre>");
- var6.println("<hr>");
- var6.println("<h1>");
- var6.println(" package " + var1);
- var6.println("</h1>");
- this.genPackageDocumentationType(var6, var2, InterfaceIndexImage);
- this.genPackageDocumentationType(var6, var3, ClassIndexImage);
- this.genPackageDocumentationType(var6, var4, ExceptionIndexImage);
- this.genPackageDocumentationType(var6, var5, ErrorIndexImage);
- htmlEnd(var6);
- }
-
- private void genPackageDocumentationType(PrintWriter var1, ClassDeclaration[] var2, String var3) {
- if (var2.length != 0) {
- DocumentationGenerator.sort(var2);
- var1.println("<h2>");
- var1.println(" " + var3);
- var1.println("</h2>");
- var1.println("<menu>");
-
- for(int var4 = 0; var4 < var2.length; ++var4) {
- var1.println(" <li> " + this.classString(var2[var4]));
- this.genClassDocumentation(var2[var4], var4 > 0 ? var2[var4 - 1] : null, var4 + 1 < var2.length ? var2[var4 + 1] : null);
- }
-
- var1.println("</menu>");
- }
- }
-
- void genClassDocumentation(ClassDeclaration var1, ClassDeclaration var2, ClassDeclaration var3) {
- System.out.println(Main.getText("html.Generating_documentation_for", var1.toString()));
- this.currentClass = var1;
-
- ClassDefinition var4;
- try {
- var4 = ((DocumentationGenerator)this).getClassDefinition(var1);
- } catch (ClassNotFound var17) {
- System.out.println(Main.getText("html.Warning_Could_not_find_class_info_for", var1.toString()));
- return;
- }
-
- String var5 = (var4.isInterface() ? "Interface " : "Class ") + var4.getName();
- PrintWriter var6 = DocumentationGenerator.openFile(((DocumentationGenerator)this).getReferenceName(var4.getName()) + ".html");
- this.htmlStart(var6, var5);
- if (!Constants.idNull.equals(var4.getName().getQualifier())) {
- this.genButtons(var6, var4, var2, var3);
- var6.println("<hr>");
- }
-
- var6.println("<h1>");
- var6.println(" " + var5);
- var6.println("</h1>");
- if (!var4.isInterface()) {
- this.genSuperClasses(var6, this.currentClass);
- }
-
- var6.println("<dl>");
- var6.print(" <dt> ");
- String var7 = Modifier.toString(var4.getModifiers());
- if (var7.length() > 0) {
- var6.print(var7 + " ");
- }
-
- var6.print(var4.isInterface() ? "" : "class ");
- var6.println("<b>" + var4.getName().getName() + "</b>");
- if (!var4.isInterface()) {
- ClassDeclaration var8 = var4.getSuperClass();
- if (var8 != null) {
- var6.println(" <dt> extends " + this.classString(var8));
- }
- }
-
- ClassDeclaration[] var18 = var4.getInterfaces();
- if (var18.length > 0) {
- var6.print(" <dt> ");
- var6.print(var4.isInterface() ? "extends " : "implements ");
-
- for(int var9 = 0; var9 < var18.length; ++var9) {
- if (var9 > 0) {
- var6.print(", ");
- }
-
- var6.print(this.classString(var18[var9]));
- }
-
- var6.println();
- }
-
- var6.println("</dl>");
- String var19 = var4.getDocumentation();
- if (var19 != null) {
- Vector var10 = DocumentationGenerator.mergeDoc(var19);
- String var11 = ((DocumentationGenerator)this).getComment(var10);
- String var12 = ((DocumentationGenerator)this).getAuthors(var10);
- String var13 = ((DocumentationGenerator)this).getVersion(var10);
- Vector var14 = ((DocumentationGenerator)this).getSees(var10, this.currentClass);
- String var15 = ((DocumentationGenerator)this).getDeprecated(var10);
- boolean var16 = var12 != null || var13 != null || var14 != null;
- if (var15 != null) {
- this.genDeprecation(var6, var4.getName().getName().toString(), var15);
- }
-
- if (var11 != null) {
- var6.println(var11);
- var6.println("<p>");
- }
-
- if (var16) {
- var6.println("<dl>");
- }
-
- if (var13 != null) {
- var6.println(" <dt> <b>Version:</b>");
- var6.println(" <dd> " + var13);
- }
-
- if (var12 != null) {
- var6.println(" <dt> <b>Author:</b>");
- var6.println(" <dd> " + var12);
- }
-
- if (var14 != null) {
- this.handleSeeAlso(var6, var14);
- }
-
- if (var16) {
- var6.println("</dl>");
- }
- }
-
- if (!var4.isPublic() && !Constants.idNull.equals(var4.getName().getQualifier())) {
- var6.println("<p>");
- var6.println("<em>");
- var6.println("This class is not public and therefore cannot be used outside this package.");
- var6.println("</em>");
- } else {
- var6.println("<hr>");
- var6.println(this.anchorString("index"));
- Vector var20 = DocumentationGenerator.allVariables(var4);
- Vector var22 = DocumentationGenerator.allConstructors(var4);
- Vector var24 = DocumentationGenerator.allMethods(var4);
- this.genIndex(var6, var4, var20, 0);
- this.genIndex(var6, var4, var22, 1);
- this.genIndex(var6, var4, var24, 2);
- var20 = DocumentationGenerator.localFieldsOf(var4, var20);
- var24 = DocumentationGenerator.localFieldsOf(var4, var24);
- var22 = DocumentationGenerator.localFieldsOf(var4, var22);
- this.genDocumentation(var6, var20, 0);
- this.genDocumentation(var6, var22, 1);
- this.genDocumentation(var6, var24, 2);
- }
-
- if (!Constants.idNull.equals(var4.getName().getQualifier())) {
- var6.println("<hr>");
- this.genButtons(var6, var4, var2, var3);
- }
-
- htmlEnd(var6);
- }
-
- private void genSuperClasses(PrintWriter var1, ClassDeclaration var2) {
- Vector var3 = ((DocumentationGenerator)this).superclassesOf(var2);
- int var4 = var3.size();
- var1.println("<pre>");
-
- for(int var5 = 0; var5 < var4; ++var5) {
- ClassDeclaration var6 = (ClassDeclaration)var3.elementAt(var5);
-
- for(int var7 = 1; var7 < var5; ++var7) {
- var1.print(" ");
- }
-
- if (var5 > 0) {
- var1.println(" |");
- }
-
- for(int var8 = 1; var8 < var5; ++var8) {
- var1.print(" ");
- }
-
- if (var5 > 0) {
- var1.print(" +----");
- }
-
- if (var6.equals(var2)) {
- var1.println(var6.getName());
- } else {
- var1.println(this.classString(var6, "_top_", var6.getName()));
- }
- }
-
- var1.println("</pre>");
- var1.println("<hr>");
- }
-
- private void genIndex(PrintWriter var1, ClassDefinition var2, Vector var3, int var4) {
- if (var3.size() > 0) {
- FieldDefinition[] var5 = new FieldDefinition[var3.size()];
- var3.copyInto(var5);
- DocumentationGenerator.sort(var5);
- var1.println("<h2>");
- var1.println(" " + indexImages[var4]);
- var1.println("</h2>");
- var1.println("<dl>");
-
- for(int var6 = 0; var6 < var5.length; ++var6) {
- FieldDefinition var7 = var5[var6];
- var1.print(" <dt> ");
- if (var4 == 0) {
- Identifier var8 = var7.getName();
- var1.println(var7.isStatic() ? staticVariableIndexImage : dynamicVariableIndexImage);
- var1.println("\t" + this.classString(var7.getClassDeclaration(), var8, "<b>" + var8 + "</b>"));
- } else {
- String var10 = DocumentationGenerator.getReferenceName(var7);
- String var9;
- if (var7.isConstructor()) {
- var9 = constructorIndexImage;
- } else {
- var9 = var7.isStatic() ? staticMethodIndexImage : dynamicMethodIndexImage;
- }
-
- var1.println(var9);
- var1.print("\t" + this.refString(this.methodTag(var7), "<b>" + var10 + "</b>"));
- var1.println(var7.getType().typeString("", true, false));
- }
-
- var1.print(" <dd> ");
- if (!var2.equals(var7.getClassDefinition())) {
- var1.print("Inherited from ");
- var1.print(this.classString(var7.getClassDeclaration()));
- var1.print(". ");
- }
-
- var1.println(((DocumentationGenerator)this).firstSentence(var7));
- if (var7.getDocumentation() != null && var7.getDocumentation().indexOf("@deprecated") >= 0) {
- var1.println("<b>Deprecated.</b>");
- }
- }
-
- var1.println("</dl>");
- }
- }
-
- void genDocumentation(PrintWriter var1, Vector var2, int var3) {
- if (var2.size() > 0) {
- var1.println(this.anchorString(docAnchors[var3]));
- var1.println("<h2>");
- var1.println(" " + docImages[var3]);
- var1.println("</h2>");
- if (var3 == 1) {
- String var4 = this.currentClass.getName().getName().toString();
- var1.println(this.anchorString(var4));
- }
-
- for(int var6 = 0; var6 < var2.size(); ++var6) {
- FieldDefinition var5 = (FieldDefinition)var2.elementAt(var6);
- if (var3 == 0) {
- this.genVariableDocumentation(var1, var5);
- } else {
- this.genMethodDocumentation(var1, var5);
- }
-
- if (Main.showIndex) {
- this.allFields.addElement(var5);
- }
- }
-
- }
- }
-
- void genVariableDocumentation(PrintWriter var1, FieldDefinition var2) {
- String var3 = var2.isStatic() ? staticVariableDocImage : dynamicVariableDocImage;
- var1.println(this.anchorString(var2.getName().toString(), var3));
- var1.println("<b>" + var2.getName() + "</b>");
- var1.println("<pre>");
- var1.print(DocumentationGenerator.modString(var2) + " " + ((DocumentationGenerator)this).typeString(var2.getType()) + " " + var2.getName());
-
- for(int var4 = var2.getType().getArrayDimension(); var4 > 0; --var4) {
- var1.print("[]");
- }
-
- var1.println();
- var1.println("</pre>");
- String var5 = var2.getDocumentation();
- if (var5 != null) {
- Vector var6 = DocumentationGenerator.mergeDoc(var5);
- String var7 = ((DocumentationGenerator)this).getComment(var6);
- Vector var8 = ((DocumentationGenerator)this).getSees(var6, this.currentClass);
- String var9 = ((DocumentationGenerator)this).getDeprecated(var6);
- var1.println("<dl>");
- if (var9 != null) {
- var1.print("<dd>");
- this.genDeprecation(var1, var2.getName().toString(), var9);
- }
-
- if (var7 != null) {
- var1.println(" <dd> " + var7 + "<p>");
- }
-
- if (var8 != null) {
- var1.println(" <dd><dl> ");
- this.handleSeeAlso(var1, var8);
- var1.println(" </dl></dd>");
- }
-
- var1.println("</dl>");
- }
-
- }
-
- void genMethodDocumentation(PrintWriter var1, FieldDefinition var2) {
- var2.getClassDeclaration();
- var2.getType();
- boolean var3 = var2.isConstructor();
- String var4 = DocumentationGenerator.getReferenceName(var2);
- String var5 = var3 ? constructorDocImage : (var2.isStatic() ? staticMethodDocImage : dynamicMethodDocImage);
- var1.println(this.anchorString(this.methodTag(var2), var5));
- if (var3) {
- var1.println("<b>" + var4 + "</b>");
- } else {
- var1.println(this.anchorString(var4.toString(), "<b>" + var4 + "</b>"));
- }
-
- var1.println("<pre>");
- String var6 = DocumentationGenerator.modString(var2) + " ";
- if (var3) {
- var6 = var6 + var4 + "(";
- } else {
- var6 = var6 + ((DocumentationGenerator)this).typeString(var2.getType().getReturnType());
-
- for(int var7 = var2.getType().getReturnType().getArrayDimension(); var7 > 0; --var7) {
- var6 = var6 + "[]";
- }
-
- var6 = var6 + " " + var2.getName() + "(";
- }
-
- var1.print(var6);
- boolean var30 = false;
- int var8 = 0;
-
- for(int var9 = 0; var9 < var6.length(); ++var9) {
- if (var30) {
- if (var6.charAt(var9) == '>') {
- var30 = false;
- }
- } else if (var6.charAt(var9) == '<') {
- var30 = true;
- } else {
- ++var8;
- }
- }
-
- Type[] var10 = var2.getType().getArgumentTypes();
- if (var2.getArguments() == null) {
- System.out.println(var2);
- }
-
- Enumeration var11 = var2.getArguments().elements();
- if (!var2.isStatic()) {
- var11.nextElement();
- }
-
- for(int var12 = 0; var12 < var10.length; ++var12) {
- if (var12 > 0) {
- var1.println(",");
-
- for(int var13 = var8; var13 > 0; --var13) {
- var1.print(" ");
- }
- }
-
- var1.print(((DocumentationGenerator)this).typeString(var10[var12]));
- LocalField var31 = (LocalField)var11.nextElement();
- var1.print(" ");
- var1.print(((FieldDefinition)var31).getName());
-
- for(int var14 = var10[var12].getArrayDimension(); var14 > 0; --var14) {
- var1.print("[]");
- }
- }
-
- var1.print(")");
- ClassDeclaration[] var32 = var2.getExceptions(super.env);
- if (var32.length > 0) {
- var1.print(" throws");
- }
-
- for(int var33 = 0; var33 < var32.length; ++var33) {
- if (var33 > 0) {
- var1.print(",");
- }
-
- var1.print(" " + this.classString(var32[var33]));
- }
-
- var1.println();
- var1.println("</pre>");
- String var15 = ((DocumentationGenerator)this).getDocumentation(var2);
- FieldDefinition var16 = ((DocumentationGenerator)this).getOverride(var2);
- if (var16 != null && var15 == null) {
- var15 = "";
- }
-
- if (var15 != null) {
- Vector var17 = DocumentationGenerator.mergeDoc(var15);
- String var18 = ((DocumentationGenerator)this).getComment(var17);
- String var19 = ((DocumentationGenerator)this).getReturn(var17);
- Vector var20 = ((DocumentationGenerator)this).getSees(var17, this.currentClass);
- Vector var21 = DocumentationGenerator.getParameters(var17);
- Vector var22 = ((DocumentationGenerator)this).getThrows(var17, var2);
- String var23 = ((DocumentationGenerator)this).getDeprecated(var17);
- boolean var24 = var21 != null || var19 != null || var22 != null || var16 != null || var20 != null;
- var1.println("<dl>");
- if (var23 != null) {
- var1.print("<dd>");
- this.genDeprecation(var1, var4 + "()", var23);
- }
-
- if (var18 != null) {
- var1.println(" <dd> " + var18);
- var1.println("<p>");
- }
-
- if (var24) {
- var1.println(" <dd><dl>");
- }
-
- if (var21 != null) {
- var1.println(" <dt> <b>Parameters:</b>");
-
- for(int var25 = 0; var25 < var21.size(); var25 += 2) {
- var1.println(" <dd> " + var21.elementAt(var25) + " - " + var21.elementAt(var25 + 1));
- }
- }
-
- if (var19 != null) {
- var1.println(" <dt> <b>Returns:</b>");
- var1.println(" <dd> " + var19);
- }
-
- if (var22 != null) {
- for(int var35 = 0; var35 < var22.size(); var35 += 2) {
- ClassDeclaration var26 = (ClassDeclaration)var22.elementAt(var35);
- String var27 = (String)var22.elementAt(var35 + 1);
- var1.println(" <dt> <b>Throws:</b> " + this.classString(var26));
- var1.println(" <dd> " + var27);
- }
- }
-
- if (var16 != null) {
- var1.println(" <dt> <b>Overrides:</b>");
- var1.println(" <dd> " + this.refString(this.methodTag(var16), var16.getName()) + " in class " + this.classString(var16.getClassDeclaration()));
- Object var34 = null;
- }
-
- if (var20 != null) {
- this.handleSeeAlso(var1, var20);
- }
-
- if (var24) {
- var1.println(" </dl></dd>");
- }
-
- var1.println("</dl>");
- }
-
- }
-
- void genFieldIndex() {
- this.currentClass = null;
- PrintWriter var1 = DocumentationGenerator.openFile("AllNames.html");
- this.htmlStart(var1, "Index of all Fields and Methods");
- var1.print("<pre>");
- var1.print(this.refString("packages.html", "All Packages"));
- var1.print(" ");
- var1.print(this.refString("tree.html", "Class Hierarchy"));
- var1.print("</pre>");
- var1.println("<hr>");
-
- for(char var2 = 'A'; var2 <= 'Z'; ++var2) {
- var1.println(this.refString("#Thumb-" + var2, String.valueOf(var2)));
- }
-
- var1.println();
- var1.println("<hr>");
- var1.println("<h1>");
- var1.println(" Index of all Fields and Methods");
- var1.println("</h1>");
- if (this.allFields.size() == 0) {
- htmlEnd(var1);
- } else {
- FieldDefinition[] var3 = new FieldDefinition[this.allFields.size()];
- this.allFields.copyInto(var3);
- String[] var4 = new String[var3.length];
- System.out.print(Main.getText("html.Sorting_items", var3.length));
- System.out.flush();
-
- for(int var5 = 0; var5 < var4.length; ++var5) {
- var4[var5] = DocumentationGenerator.sortKey(var3[var5]);
- }
-
- DocumentationGenerator.xsort(var3, var4);
- System.out.println(Main.getText("html.done"));
- int var6 = 0;
-
- for(char var7 = 'A'; var7 < 'Z'; ++var7) {
- boolean var8 = false;
- var1.println(this.anchorString("Thumb-" + var7));
-
- for(; var6 < var3.length && Character.toUpperCase(var4[var6].charAt(0)) == var7; ++var6) {
- if (!var8) {
- if (var6 > 0) {
- var1.println("<hr>");
- }
-
- var1.println("<h2>");
- var1.println(this.anchorString("Thumb-" + var7, "<b> " + var7 + " </b>"));
- var1.println("</h2>");
- var1.println("<dl>");
- var8 = true;
- }
-
- FieldDefinition var9 = var3[var6];
-
- try {
- ClassDeclaration var10 = var9.getClassDeclaration();
- ClassDefinition var11 = ((DocumentationGenerator)this).getClassDefinition(var10);
- var1.print(" <dt> ");
- if (var9.isVariable()) {
- Identifier var12 = var9.getName();
- var1.println("\t" + this.classString(var9.getClassDeclaration(), var12, "<b>" + var12 + "</b>") + ".");
- var1.print(var9.isStatic() ? "Static variable in " : "Variable in ");
- } else {
- String var15 = DocumentationGenerator.getReferenceName(var9);
- if (var9.isConstructor()) {
- String var13 = constructorIndexImage;
- } else {
- String var16 = var9.isStatic() ? staticMethodIndexImage : dynamicMethodIndexImage;
- }
-
- var1.print("\t" + this.refString(this.methodTag(var9), "<b>" + var15 + "</b>"));
- var1.println(var9.getType().typeString("", true, false) + ".");
- var1.print(var9.isConstructor() ? "Constructor for " : (var9.isStatic() ? "Static method in " : "Method in "));
- }
-
- var1.println((var11.isInterface() ? "interface " : "class ") + this.longClassString(var10));
- var1.println(" <dd> " + ((DocumentationGenerator)this).firstSentence(var9));
- } catch (ClassNotFound var14) {
- }
- }
-
- if (var8) {
- var1.println("</dl>");
- }
- }
-
- htmlEnd(var1);
- }
- }
-
- void genClassTree(Hashtable var1, ClassDeclaration var2) {
- this.currentClass = null;
- PrintWriter var3 = DocumentationGenerator.openFile("tree.html");
- this.htmlStart(var3, "Class Hierarchy");
- var3.print("<pre>");
- var3.print(this.refString("packages.html", "All Packages"));
- var3.print(" ");
- var3.print(this.refString("AllNames.html", "Index"));
- var3.print("</pre>");
- var3.println("<hr>");
- var3.println("<h1>");
- var3.println(" Class Hierarchy");
- var3.println("</h1>");
- var3.println("<ul>");
- this.genClassTree(var3, var1, var2, " ");
- var3.println("</ul>");
- htmlEnd(var3);
- }
-
- private void genClassTree(PrintWriter var1, Hashtable var2, ClassDeclaration var3, String var4) {
- try {
- ClassDefinition var5 = ((DocumentationGenerator)this).getClassDefinition(var3);
- ClassDeclaration[] var6 = var5.getInterfaces();
- var1.print(var4 + "<li> ");
- var1.print(var5.isClass() ? "class " : "interface ");
- var1.print(this.longClassString(var3));
- if (var6.length > 0) {
- var1.print(" (");
- var1.print(var5.isInterface() ? "extends " : "implements ");
-
- for(int var7 = 0; var7 < var6.length; ++var7) {
- if (var7 > 0) {
- var1.print(", ");
- }
-
- var1.print(this.longClassString(var6[var7]));
- }
-
- var1.print(")");
- }
- } catch (ClassNotFound var8) {
- }
-
- var1.println();
- ClassDeclaration[] var9 = (ClassDeclaration[])var2.get(var3);
- if (var9 != null && var9.length > 0) {
- String var10 = var4 + " ";
- var1.println(var4 + "<ul>");
-
- for(int var11 = 0; var11 < var9.length; ++var11) {
- this.genClassTree(var1, var2, var9[var11], var10);
- }
-
- var1.println(var4 + "</ul>");
- }
-
- }
-
- private String refString(String var1, Object var2) {
- return "<a href=\"" + var1 + "\">" + var2 + "</a>";
- }
-
- private String anchorString(String var1) {
- if (var1.charAt(0) == '#') {
- var1 = var1.substring(1);
- }
-
- return "<a name=\"" + var1 + "\"></a>";
- }
-
- private String anchorString(String var1, Object var2) {
- if (var1.charAt(0) == '#') {
- var1 = var1.substring(1);
- }
-
- return "<a name=\"" + var1 + "\">" + var2 + "</a>";
- }
-
- private static String imgString(String var0, int var1, int var2, String var3) {
- return "<img src=\"images/" + var0 + "\" width=" + var1 + " height=" + var2 + " alt=\"" + var3 + "\">";
- }
-
- private String longClassString(ClassDeclaration var1) {
- String var2 = var1.getName().getQualifier().toString();
- String var3 = this.classString(var1, "_top_", var1.getName().getName());
- return var2.length() > 0 ? var2 + "." + var3 : var3;
- }
-
- String classString(ClassDeclaration var1) {
- return this.classString(var1, "_top_", var1.getName().getName());
- }
-
- private String classString(ClassDeclaration var1, Object var2, Object var3) {
- return ((DocumentationGenerator)this).shouldDocument(var1) ? this.refString(this.classTag(var1, var2), var3) : var3.toString();
- }
-
- private String classTag(ClassDeclaration var1) {
- return this.classTag(var1, "_top_");
- }
-
- private String classTag(ClassDeclaration var1, Object var2) {
- return !var1.equals(this.currentClass) && var1.getName().toString().length() != 0 ? ((DocumentationGenerator)this).getReferenceName(var1.getName()) + ".html#" + var2 : "#" + var2;
- }
-
- private String methodTag(FieldDefinition var1) {
- String var2 = DocumentationGenerator.getReferenceName(var1);
- return this.classTag(var1.getClassDeclaration(), var1.getType().typeString(var2.toString(), false, false));
- }
-
- private String pkgString(Identifier var1, Object var2) {
- return this.refString("Package-" + var1.toString() + ".html", var2);
- }
-
- String authorString(String var1) {
- return var1;
- }
-
- String commentString(String var1) {
- return var1;
- }
-
- String versionString(String var1) {
- return var1;
- }
-
- String returnString(String var1) {
- return var1;
- }
-
- private void genButtons(PrintWriter var1, ClassDefinition var2, ClassDeclaration var3, ClassDeclaration var4) {
- var1.println("<pre>");
- var1.print(this.refString("packages.html", "All Packages"));
- var1.print(" ");
- var1.print(this.refString("tree.html", "Class Hierarchy"));
- var1.print(" ");
- var1.print(this.pkgString(var2.getName().getQualifier(), "This Package"));
- var1.print(" ");
- if (var3 != null) {
- var1.print(this.classString(var3, "_top_", "Previous"));
- } else {
- var1.print(this.pkgString(var2.getName().getQualifier(), "Previous"));
- }
-
- var1.print(" ");
- if (var4 != null) {
- var1.print(this.classString(var4, "_top_", "Next"));
- } else {
- var1.print(this.pkgString(var2.getName().getQualifier(), "Next"));
- }
-
- var1.print(" ");
- var1.print(this.refString("AllNames.html", "Index"));
- var1.println("</pre>");
- }
-
- private void htmlStart(PrintWriter var1, String var2) {
- var1.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">");
- var1.println("<!--NewPage-->");
- var1.println("<html>");
- var1.println("<head>");
- var1.println("<!-- Generated by javadoc on " + today + " -->");
- var1.println("<title>");
- var1.println(" " + var2);
- var1.println("</title>");
- var1.println("</head>");
- var1.println("<body>");
- var1.println(this.anchorString("_top_"));
- }
-
- private static void htmlEnd(PrintWriter var0) {
- var0.println("</body>");
- var0.println("</html>");
- var0.close();
- }
-
- private void handleSeeAlso(PrintWriter var1, Vector var2) {
- String var3 = "";
- Enumeration var4 = var2.elements();
-
- while(var4.hasMoreElements()) {
- ClassDeclaration var5 = (ClassDeclaration)var4.nextElement();
- String var6 = (String)var4.nextElement();
- String var7 = (String)var4.nextElement();
- if (var3.length() > 0) {
- var3 = var3 + ", ";
- }
-
- if (var7 == null) {
- var3 = var3 + this.classString(var5);
- } else {
- var3 = var3 + this.classString(var5, var7, var6);
- }
- }
-
- var1.println(" <dt> <b>See Also:</b>");
- var1.println(" <dd> " + var3);
- }
-
- private void genDeprecation(PrintWriter var1, String var2, String var3) {
- var1.println("<b> Note: " + var2 + " is deprecated.</b>");
- if (var3.length() > 0) {
- var1.println("<i>" + var3 + "</i>");
- }
-
- var1.println("<p>");
- }
- }
-