Merge jdk7-b53

Wed, 01 Apr 2009 08:58:42 -0700

author
xdono
date
Wed, 01 Apr 2009 08:58:42 -0700
changeset 249
dbdeb4a7581b
parent 248
39c674c60a36
parent 247
72c2df1a2b5a
child 250
197a7f881937

Merge

     1.1 --- a/.hgtags	Thu Mar 26 16:48:53 2009 -0700
     1.2 +++ b/.hgtags	Wed Apr 01 08:58:42 2009 -0700
     1.3 @@ -25,3 +25,5 @@
     1.4  c53007f34195f69223bdd4125ec6c0740f7d6736 jdk7-b48
     1.5  d17d927ad9bdfafae32451645d182acb7bed7be6 jdk7-b49
     1.6  46f2f6ed96f13fc49fec3d1b6aa616686128cb57 jdk7-b50
     1.7 +8c55d5b0ed71ed3a749eb97e4eab79b4831649b8 jdk7-b51
     1.8 +29329051d483d39f66073752ba4afbf29d893cfe jdk7-b52
     2.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java	Thu Mar 26 16:48:53 2009 -0700
     2.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java	Wed Apr 01 08:58:42 2009 -0700
     2.3 @@ -60,7 +60,11 @@
     2.4  
     2.5      /*** abstracts ***/
     2.6  
     2.7 -    public abstract void printSummaryLabel(ClassDoc cd);
     2.8 +    public abstract void printSummaryLabel();
     2.9 +
    2.10 +    public abstract void printTableSummary();
    2.11 +
    2.12 +    public abstract void printSummaryTableHeader(ProgramElementDoc member);
    2.13  
    2.14      public abstract void printInheritedSummaryLabel(ClassDoc cd);
    2.15  
    2.16 @@ -342,12 +346,13 @@
    2.17       * format for listing the API. Call methods from the sub-class to complete
    2.18       * the generation.
    2.19       */
    2.20 -    protected void printDeprecatedAPI(List<Doc> deprmembers, String headingKey) {
    2.21 +    protected void printDeprecatedAPI(List<Doc> deprmembers, String headingKey, String tableSummary, String[] tableHeader) {
    2.22          if (deprmembers.size() > 0) {
    2.23 -            writer.tableIndexSummary();
    2.24 -            writer.tableHeaderStart("#CCCCFF");
    2.25 -            writer.strongText(headingKey);
    2.26 -            writer.tableHeaderEnd();
    2.27 +            writer.tableIndexSummary(tableSummary);
    2.28 +            writer.tableCaptionStart();
    2.29 +            writer.printText(headingKey);
    2.30 +            writer.tableCaptionEnd();
    2.31 +            writer.summaryTableHeader(tableHeader, "col");
    2.32              for (int i = 0; i < deprmembers.size(); i++) {
    2.33                  ProgramElementDoc member =(ProgramElementDoc)deprmembers.get(i);
    2.34                  writer.trBgcolorStyle("white", "TableRowColor");
    2.35 @@ -370,19 +375,26 @@
    2.36      /**
    2.37       * Print use info.
    2.38       */
    2.39 -    protected void printUseInfo(List<? extends ProgramElementDoc> mems, String heading) {
    2.40 +    protected void printUseInfo(List<? extends ProgramElementDoc> mems, String heading, String tableSummary) {
    2.41          if (mems == null) {
    2.42              return;
    2.43          }
    2.44          List<? extends ProgramElementDoc> members = mems;
    2.45 +        boolean printedUseTableHeader = false;
    2.46          if (members.size() > 0) {
    2.47 -            writer.tableIndexSummary();
    2.48 -            writer.tableUseInfoHeaderStart("#CCCCFF");
    2.49 +            writer.tableIndexSummary(tableSummary);
    2.50 +            writer.tableSubCaptionStart();
    2.51              writer.print(heading);
    2.52 -            writer.tableHeaderEnd();
    2.53 +            writer.tableCaptionEnd();
    2.54              for (Iterator<? extends ProgramElementDoc> it = members.iterator(); it.hasNext(); ) {
    2.55                  ProgramElementDoc pgmdoc = it.next();
    2.56                  ClassDoc cd = pgmdoc.containingClass();
    2.57 +                if (!printedUseTableHeader) {
    2.58 +                    // Passing ProgramElementDoc helps decides printing
    2.59 +                    // interface or class header in case of nested classes.
    2.60 +                    this.printSummaryTableHeader(pgmdoc);
    2.61 +                    printedUseTableHeader = true;
    2.62 +                }
    2.63  
    2.64                  writer.printSummaryLinkType(this, pgmdoc);
    2.65                  if (cd != null && !(pgmdoc instanceof ConstructorDoc)
     3.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java	Thu Mar 26 16:48:53 2009 -0700
     3.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java	Wed Apr 01 08:58:42 2009 -0700
     3.3 @@ -35,6 +35,7 @@
     3.4   * generate overview-frame.html as well as overview-summary.html.
     3.5   *
     3.6   * @author Atul M Dambalkar
     3.7 + * @author Bhavesh Patel (Modified)
     3.8   */
     3.9  public abstract class AbstractPackageIndexWriter extends HtmlDocletWriter {
    3.10  
    3.11 @@ -61,7 +62,7 @@
    3.12  
    3.13      protected abstract void printOverviewHeader();
    3.14  
    3.15 -    protected abstract void printIndexHeader(String text);
    3.16 +    protected abstract void printIndexHeader(String text, String tableSummary);
    3.17  
    3.18      protected abstract void printIndexRow(PackageDoc pkg);
    3.19  
    3.20 @@ -101,7 +102,10 @@
    3.21       * Generate the frame or non-frame package index.
    3.22       */
    3.23      protected void generateIndex() {
    3.24 -        printIndexContents(packages, "doclet.Package_Summary");
    3.25 +        printIndexContents(packages, "doclet.Package_Summary",
    3.26 +                configuration.getText("doclet.Member_Table_Summary",
    3.27 +                configuration.getText("doclet.Package_Summary"),
    3.28 +                configuration.getText("doclet.packages")));
    3.29      }
    3.30  
    3.31      /**
    3.32 @@ -111,10 +115,10 @@
    3.33       * @param packages Array of packages to be documented.
    3.34       * @param text     String which will be used as the heading.
    3.35       */
    3.36 -    protected void printIndexContents(PackageDoc[] packages, String text) {
    3.37 +    protected void printIndexContents(PackageDoc[] packages, String text, String tableSummary) {
    3.38          if (packages.length > 0) {
    3.39              Arrays.sort(packages);
    3.40 -            printIndexHeader(text);
    3.41 +            printIndexHeader(text, tableSummary);
    3.42              printAllClassesPackagesLink();
    3.43              for(int i = 0; i < packages.length; i++) {
    3.44                  if (packages[i] != null) {
     4.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
     4.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
     4.3 @@ -34,6 +34,7 @@
     4.4   * Writes annotation type optional member documentation in HTML format.
     4.5   *
     4.6   * @author Jamie Ho
     4.7 + * @author Bhavesh Patel (Modified)
     4.8   */
     4.9  public class AnnotationTypeOptionalMemberWriterImpl extends
    4.10          AnnotationTypeRequiredMemberWriterImpl
    4.11 @@ -89,8 +90,27 @@
    4.12      /**
    4.13       * {@inheritDoc}
    4.14       */
    4.15 -    public void printSummaryLabel(ClassDoc cd) {
    4.16 -        writer.strongText("doclet.Annotation_Type_Optional_Member_Summary");
    4.17 +    public void printSummaryLabel() {
    4.18 +        writer.printText("doclet.Annotation_Type_Optional_Member_Summary");
    4.19 +    }
    4.20 +
    4.21 +    /**
    4.22 +     * {@inheritDoc}
    4.23 +     */
    4.24 +    public void printTableSummary() {
    4.25 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
    4.26 +                configuration().getText("doclet.Annotation_Type_Optional_Member_Summary"),
    4.27 +                configuration().getText("doclet.annotation_type_optional_members")));
    4.28 +    }
    4.29 +
    4.30 +    public void printSummaryTableHeader(ProgramElementDoc member) {
    4.31 +        String[] header = new String[] {
    4.32 +            writer.getModifierTypeHeader(),
    4.33 +            configuration().getText("doclet.0_and_1",
    4.34 +                    configuration().getText("doclet.Annotation_Type_Optional_Member"),
    4.35 +                    configuration().getText("doclet.Description"))
    4.36 +        };
    4.37 +        writer.summaryTableHeader(header, "col");
    4.38      }
    4.39  
    4.40      /**
     5.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
     5.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
     5.3 @@ -34,6 +34,7 @@
     5.4   * Writes annotation type required member documentation in HTML format.
     5.5   *
     5.6   * @author Jamie Ho
     5.7 + * @author Bhavesh Patel (Modified)
     5.8   */
     5.9  public class AnnotationTypeRequiredMemberWriterImpl extends AbstractMemberWriter
    5.10      implements AnnotationTypeRequiredMemberWriter, MemberSummaryWriter {
    5.11 @@ -178,8 +179,27 @@
    5.12      /**
    5.13       * {@inheritDoc}
    5.14       */
    5.15 -    public void printSummaryLabel(ClassDoc cd) {
    5.16 -        writer.strongText("doclet.Annotation_Type_Required_Member_Summary");
    5.17 +    public void printSummaryLabel() {
    5.18 +        writer.printText("doclet.Annotation_Type_Required_Member_Summary");
    5.19 +    }
    5.20 +
    5.21 +    /**
    5.22 +     * {@inheritDoc}
    5.23 +     */
    5.24 +    public void printTableSummary() {
    5.25 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
    5.26 +                configuration().getText("doclet.Annotation_Type_Required_Member_Summary"),
    5.27 +                configuration().getText("doclet.annotation_type_required_members")));
    5.28 +    }
    5.29 +
    5.30 +    public void printSummaryTableHeader(ProgramElementDoc member) {
    5.31 +        String[] header = new String[] {
    5.32 +            writer.getModifierTypeHeader(),
    5.33 +            configuration().getText("doclet.0_and_1",
    5.34 +                    configuration().getText("doclet.Annotation_Type_Required_Member"),
    5.35 +                    configuration().getText("doclet.Description"))
    5.36 +        };
    5.37 +        writer.summaryTableHeader(header, "col");
    5.38      }
    5.39  
    5.40      /**
     6.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java	Thu Mar 26 16:48:53 2009 -0700
     6.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java	Wed Apr 01 08:58:42 2009 -0700
     6.3 @@ -34,6 +34,7 @@
     6.4   * Generate class usage information.
     6.5   *
     6.6   * @author Robert G. Field
     6.7 + * @author Bhavesh Patel (Modified)
     6.8   */
     6.9  public class ClassUseWriter extends SubWriterHolderWriter {
    6.10  
    6.11 @@ -65,6 +66,13 @@
    6.12      final ConstructorWriterImpl constrSubWriter;
    6.13      final FieldWriterImpl fieldSubWriter;
    6.14      final NestedClassWriterImpl classSubWriter;
    6.15 +    // Summary for various use tables.
    6.16 +    final String classUseTableSummary;
    6.17 +    final String subclassUseTableSummary;
    6.18 +    final String subinterfaceUseTableSummary;
    6.19 +    final String fieldUseTableSummary;
    6.20 +    final String methodUseTableSummary;
    6.21 +    final String constructorUseTableSummary;
    6.22  
    6.23  
    6.24      /**
    6.25 @@ -116,6 +124,18 @@
    6.26          constrSubWriter = new ConstructorWriterImpl(this);
    6.27          fieldSubWriter = new FieldWriterImpl(this);
    6.28          classSubWriter = new NestedClassWriterImpl(this);
    6.29 +        classUseTableSummary = configuration.getText("doclet.Use_Table_Summary",
    6.30 +                configuration.getText("doclet.classes"));
    6.31 +        subclassUseTableSummary = configuration.getText("doclet.Use_Table_Summary",
    6.32 +                configuration.getText("doclet.subclasses"));
    6.33 +        subinterfaceUseTableSummary = configuration.getText("doclet.Use_Table_Summary",
    6.34 +                configuration.getText("doclet.subinterfaces"));
    6.35 +        fieldUseTableSummary = configuration.getText("doclet.Use_Table_Summary",
    6.36 +                configuration.getText("doclet.fields"));
    6.37 +        methodUseTableSummary = configuration.getText("doclet.Use_Table_Summary",
    6.38 +                configuration.getText("doclet.methods"));
    6.39 +        constructorUseTableSummary = configuration.getText("doclet.Use_Table_Summary",
    6.40 +                configuration.getText("doclet.constructors"));
    6.41      }
    6.42  
    6.43      /**
    6.44 @@ -213,12 +233,13 @@
    6.45      }
    6.46  
    6.47      protected void generatePackageList() throws IOException {
    6.48 -        tableIndexSummary();
    6.49 -        tableHeaderStart("#CCCCFF");
    6.50 +        tableIndexSummary(useTableSummary);
    6.51 +        tableCaptionStart();
    6.52          printText("doclet.ClassUse_Packages.that.use.0",
    6.53              getLink(new LinkInfoImpl(LinkInfoImpl.CONTEXT_CLASS_USE_HEADER, classdoc,
    6.54                  false)));
    6.55 -        tableHeaderEnd();
    6.56 +        tableCaptionEnd();
    6.57 +        summaryTableHeader(packageTableHeader, "col");
    6.58  
    6.59          for (Iterator<PackageDoc> it = pkgSet.iterator(); it.hasNext();) {
    6.60              PackageDoc pkg = it.next();
    6.61 @@ -234,12 +255,13 @@
    6.62                 pkgToPackageAnnotations == null ||
    6.63                 pkgToPackageAnnotations.size() == 0)
    6.64              return;
    6.65 -        tableIndexSummary();
    6.66 -        tableHeaderStart("#CCCCFF");
    6.67 +        tableIndexSummary(useTableSummary);
    6.68 +        tableCaptionStart();
    6.69          printText("doclet.ClassUse_PackageAnnotation",
    6.70              getLink(new LinkInfoImpl(LinkInfoImpl.CONTEXT_CLASS_USE_HEADER, classdoc,
    6.71                  false)));
    6.72 -        tableHeaderEnd();
    6.73 +        tableCaptionEnd();
    6.74 +        summaryTableHeader(packageTableHeader, "col");
    6.75          for (Iterator<PackageDoc> it = pkgToPackageAnnotations.iterator(); it.hasNext();) {
    6.76              PackageDoc pkg = it.next();
    6.77              trBgcolorStyle("white", "TableRowColor");
    6.78 @@ -300,83 +322,68 @@
    6.79              LinkInfoImpl.CONTEXT_CLASS_USE_HEADER, classdoc, false));
    6.80          String pkgLink = getPackageLink(pkg, Util.getPackageName(pkg), false);
    6.81          classSubWriter.printUseInfo(pkgToClassAnnotations.get(pkg.name()),
    6.82 -            configuration.getText("doclet.ClassUse_Annotation", classLink,
    6.83 -            pkgLink));
    6.84 -
    6.85 +                configuration.getText("doclet.ClassUse_Annotation", classLink,
    6.86 +                pkgLink), classUseTableSummary);
    6.87          classSubWriter.printUseInfo(pkgToClassTypeParameter.get(pkg.name()),
    6.88 -            configuration.getText("doclet.ClassUse_TypeParameter", classLink,
    6.89 -            pkgLink));
    6.90 +                configuration.getText("doclet.ClassUse_TypeParameter", classLink,
    6.91 +                pkgLink), classUseTableSummary);
    6.92          classSubWriter.printUseInfo(pkgToSubclass.get(pkg.name()),
    6.93 -            configuration.getText("doclet.ClassUse_Subclass", classLink,
    6.94 -            pkgLink));
    6.95 +                configuration.getText("doclet.ClassUse_Subclass", classLink,
    6.96 +                pkgLink), subclassUseTableSummary);
    6.97          classSubWriter.printUseInfo(pkgToSubinterface.get(pkg.name()),
    6.98 -                                    configuration.getText("doclet.ClassUse_Subinterface",
    6.99 -                                            classLink,
   6.100 -                                            pkgLink));
   6.101 +                configuration.getText("doclet.ClassUse_Subinterface", classLink,
   6.102 +                pkgLink), subinterfaceUseTableSummary);
   6.103          classSubWriter.printUseInfo(pkgToImplementingClass.get(pkg.name()),
   6.104 -                                    configuration.getText("doclet.ClassUse_ImplementingClass",
   6.105 -                                            classLink,
   6.106 -                                            pkgLink));
   6.107 +                configuration.getText("doclet.ClassUse_ImplementingClass", classLink,
   6.108 +                pkgLink), classUseTableSummary);
   6.109          fieldSubWriter.printUseInfo(pkgToField.get(pkg.name()),
   6.110 -                                    configuration.getText("doclet.ClassUse_Field",
   6.111 -                                            classLink,
   6.112 -                                            pkgLink));
   6.113 +                configuration.getText("doclet.ClassUse_Field", classLink,
   6.114 +                pkgLink), fieldUseTableSummary);
   6.115          fieldSubWriter.printUseInfo(pkgToFieldAnnotations.get(pkg.name()),
   6.116 -            configuration.getText("doclet.ClassUse_FieldAnnotations",
   6.117 -            classLink,
   6.118 -            pkgLink));
   6.119 +                configuration.getText("doclet.ClassUse_FieldAnnotations", classLink,
   6.120 +                pkgLink), fieldUseTableSummary);
   6.121          fieldSubWriter.printUseInfo(pkgToFieldTypeParameter.get(pkg.name()),
   6.122 -            configuration.getText("doclet.ClassUse_FieldTypeParameter",
   6.123 -            classLink,
   6.124 -            pkgLink));
   6.125 +                configuration.getText("doclet.ClassUse_FieldTypeParameter", classLink,
   6.126 +                pkgLink), fieldUseTableSummary);
   6.127          methodSubWriter.printUseInfo(pkgToMethodAnnotations.get(pkg.name()),
   6.128 -            configuration.getText("doclet.ClassUse_MethodAnnotations", classLink,
   6.129 -            pkgLink));
   6.130 +                configuration.getText("doclet.ClassUse_MethodAnnotations", classLink,
   6.131 +                pkgLink), methodUseTableSummary);
   6.132          methodSubWriter.printUseInfo(pkgToMethodParameterAnnotations.get(pkg.name()),
   6.133 -            configuration.getText("doclet.ClassUse_MethodParameterAnnotations", classLink,
   6.134 -            pkgLink));
   6.135 +                configuration.getText("doclet.ClassUse_MethodParameterAnnotations", classLink,
   6.136 +                pkgLink), methodUseTableSummary);
   6.137          methodSubWriter.printUseInfo(pkgToMethodTypeParameter.get(pkg.name()),
   6.138 -            configuration.getText("doclet.ClassUse_MethodTypeParameter", classLink,
   6.139 -            pkgLink));
   6.140 +                configuration.getText("doclet.ClassUse_MethodTypeParameter", classLink,
   6.141 +                pkgLink), methodUseTableSummary);
   6.142          methodSubWriter.printUseInfo(pkgToMethodReturn.get(pkg.name()),
   6.143 -                                     configuration.getText("doclet.ClassUse_MethodReturn",
   6.144 -                                             classLink,
   6.145 -                                             pkgLink));
   6.146 +                configuration.getText("doclet.ClassUse_MethodReturn", classLink,
   6.147 +                pkgLink), methodUseTableSummary);
   6.148          methodSubWriter.printUseInfo(pkgToMethodReturnTypeParameter.get(pkg.name()),
   6.149 -            configuration.getText("doclet.ClassUse_MethodReturnTypeParameter", classLink,
   6.150 -            pkgLink));
   6.151 +                configuration.getText("doclet.ClassUse_MethodReturnTypeParameter", classLink,
   6.152 +                pkgLink), methodUseTableSummary);
   6.153          methodSubWriter.printUseInfo(pkgToMethodArgs.get(pkg.name()),
   6.154 -                                     configuration.getText("doclet.ClassUse_MethodArgs",
   6.155 -                                             classLink,
   6.156 -                                             pkgLink));
   6.157 +                configuration.getText("doclet.ClassUse_MethodArgs", classLink,
   6.158 +                pkgLink), methodUseTableSummary);
   6.159          methodSubWriter.printUseInfo(pkgToMethodArgTypeParameter.get(pkg.name()),
   6.160 -            configuration.getText("doclet.ClassUse_MethodArgsTypeParameters",
   6.161 -            classLink,
   6.162 -            pkgLink));
   6.163 +                configuration.getText("doclet.ClassUse_MethodArgsTypeParameters", classLink,
   6.164 +                pkgLink), methodUseTableSummary);
   6.165          methodSubWriter.printUseInfo(pkgToMethodThrows.get(pkg.name()),
   6.166 -                                     configuration.getText("doclet.ClassUse_MethodThrows",
   6.167 -                                             classLink,
   6.168 -                                             pkgLink));
   6.169 +                configuration.getText("doclet.ClassUse_MethodThrows", classLink,
   6.170 +                pkgLink), methodUseTableSummary);
   6.171          constrSubWriter.printUseInfo(pkgToConstructorAnnotations.get(pkg.name()),
   6.172 -            configuration.getText("doclet.ClassUse_ConstructorAnnotations",
   6.173 -                classLink,
   6.174 -                pkgLink));
   6.175 +                configuration.getText("doclet.ClassUse_ConstructorAnnotations", classLink,
   6.176 +                pkgLink), constructorUseTableSummary);
   6.177          constrSubWriter.printUseInfo(pkgToConstructorParameterAnnotations.get(pkg.name()),
   6.178 -            configuration.getText("doclet.ClassUse_ConstructorParameterAnnotations",
   6.179 -                classLink,
   6.180 -                pkgLink));
   6.181 +                configuration.getText("doclet.ClassUse_ConstructorParameterAnnotations", classLink,
   6.182 +                pkgLink), constructorUseTableSummary);
   6.183          constrSubWriter.printUseInfo(pkgToConstructorArgs.get(pkg.name()),
   6.184 -                                     configuration.getText("doclet.ClassUse_ConstructorArgs",
   6.185 -                                             classLink,
   6.186 -                                             pkgLink));
   6.187 +                configuration.getText("doclet.ClassUse_ConstructorArgs", classLink,
   6.188 +                pkgLink), constructorUseTableSummary);
   6.189          constrSubWriter.printUseInfo(pkgToConstructorArgTypeParameter.get(pkg.name()),
   6.190 -            configuration.getText("doclet.ClassUse_ConstructorArgsTypeParameters",
   6.191 -            classLink,
   6.192 -            pkgLink));
   6.193 +                configuration.getText("doclet.ClassUse_ConstructorArgsTypeParameters", classLink,
   6.194 +                pkgLink), constructorUseTableSummary);
   6.195          constrSubWriter.printUseInfo(pkgToConstructorThrows.get(pkg.name()),
   6.196 -                                     configuration.getText("doclet.ClassUse_ConstructorThrows",
   6.197 -                                             classLink,
   6.198 -                                             pkgLink));
   6.199 +                configuration.getText("doclet.ClassUse_ConstructorThrows", classLink,
   6.200 +                pkgLink), constructorUseTableSummary);
   6.201      }
   6.202  
   6.203      /**
     7.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
     7.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
     7.3 @@ -35,6 +35,7 @@
     7.4   * Write the Constants Summary Page in HTML format.
     7.5   *
     7.6   * @author Jamie Ho
     7.7 + * @author Bhavesh Patel (Modified)
     7.8   * @since 1.4
     7.9   */
    7.10  public class ConstantsSummaryWriterImpl extends HtmlDocletWriter
    7.11 @@ -50,6 +51,10 @@
    7.12       */
    7.13      private ClassDoc currentClassDoc;
    7.14  
    7.15 +    private final String constantsTableSummary;
    7.16 +
    7.17 +    private final String[] constantsTableHeader;
    7.18 +
    7.19      /**
    7.20       * Construct a ConstantsSummaryWriter.
    7.21       * @param configuration the configuration used in this run
    7.22 @@ -59,6 +64,13 @@
    7.23              throws IOException {
    7.24          super(configuration, ConfigurationImpl.CONSTANTS_FILE_NAME);
    7.25          this.configuration = configuration;
    7.26 +        constantsTableSummary = configuration.getText("doclet.Constants_Table_Summary",
    7.27 +                configuration.getText("doclet.Constants_Summary"));
    7.28 +        constantsTableHeader = new String[] {
    7.29 +            getModifierTypeHeader(),
    7.30 +            configuration.getText("doclet.ConstantField"),
    7.31 +            configuration.getText("doclet.Value")
    7.32 +        };
    7.33      }
    7.34  
    7.35      /**
    7.36 @@ -151,12 +163,11 @@
    7.37       * @param classStr the heading to print.
    7.38       */
    7.39      protected void writeClassName(String classStr) {
    7.40 -        table(1, 3, 0);
    7.41 -        trBgcolorStyle("#EEEEFF", "TableSubHeadingColor");
    7.42 -        thAlignColspan("left", 3);
    7.43 +        table(1, 3, 0, constantsTableSummary);
    7.44 +        tableSubCaptionStart();
    7.45          write(classStr);
    7.46 -        thEnd();
    7.47 -        trEnd();
    7.48 +        tableCaptionEnd();
    7.49 +        summaryTableHeader(constantsTableHeader, "col");
    7.50      }
    7.51  
    7.52      private void tableFooter(boolean isHeader) {
     8.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
     8.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
     8.3 @@ -37,6 +37,7 @@
     8.4   *
     8.5   * @author Robert Field
     8.6   * @author Atul M Dambalkar
     8.7 + * @author Bhavesh Patel (Modified)
     8.8   */
     8.9  public class ConstructorWriterImpl extends AbstractExecutableMemberWriter
    8.10      implements ConstructorWriter, MemberSummaryWriter {
    8.11 @@ -211,8 +212,34 @@
    8.12          this.foundNonPubConstructor = foundNonPubConstructor;
    8.13      }
    8.14  
    8.15 -    public void printSummaryLabel(ClassDoc cd) {
    8.16 -        writer.strongText("doclet.Constructor_Summary");
    8.17 +    public void printSummaryLabel() {
    8.18 +        writer.printText("doclet.Constructor_Summary");
    8.19 +    }
    8.20 +
    8.21 +    public void printTableSummary() {
    8.22 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
    8.23 +                configuration().getText("doclet.Constructor_Summary"),
    8.24 +                configuration().getText("doclet.constructors")));
    8.25 +    }
    8.26 +
    8.27 +    public void printSummaryTableHeader(ProgramElementDoc member) {
    8.28 +        String[] header;
    8.29 +        if (foundNonPubConstructor) {
    8.30 +            header = new String[] {
    8.31 +                configuration().getText("doclet.Modifier"),
    8.32 +                configuration().getText("doclet.0_and_1",
    8.33 +                        configuration().getText("doclet.Constructor"),
    8.34 +                        configuration().getText("doclet.Description"))
    8.35 +            };
    8.36 +        }
    8.37 +        else {
    8.38 +            header = new String[] {
    8.39 +                configuration().getText("doclet.0_and_1",
    8.40 +                        configuration().getText("doclet.Constructor"),
    8.41 +                        configuration().getText("doclet.Description"))
    8.42 +            };
    8.43 +        }
    8.44 +        writer.summaryTableHeader(header, "col");
    8.45      }
    8.46  
    8.47      public void printSummaryAnchor(ClassDoc cd) {
     9.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java	Thu Mar 26 16:48:53 2009 -0700
     9.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java	Wed Apr 01 08:58:42 2009 -0700
     9.3 @@ -35,6 +35,7 @@
     9.4   *
     9.5   * @see java.util.List
     9.6   * @author Atul M Dambalkar
     9.7 + * @author Bhavesh Patel (Modified)
     9.8   */
     9.9  public class DeprecatedListWriter extends SubWriterHolderWriter {
    9.10  
    9.11 @@ -55,6 +56,28 @@
    9.12          "doclet.Deprecated_Annotation_Type_Members"
    9.13      };
    9.14  
    9.15 +    private static final String[] SUMMARY_KEYS = new String[] {
    9.16 +        "doclet.deprecated_interfaces", "doclet.deprecated_classes",
    9.17 +        "doclet.deprecated_enums", "doclet.deprecated_exceptions",
    9.18 +        "doclet.deprecated_errors",
    9.19 +        "doclet.deprecated_annotation_types",
    9.20 +        "doclet.deprecated_fields",
    9.21 +        "doclet.deprecated_methods", "doclet.deprecated_constructors",
    9.22 +        "doclet.deprecated_enum_constants",
    9.23 +        "doclet.deprecated_annotation_type_members"
    9.24 +    };
    9.25 +
    9.26 +    private static final String[] HEADER_KEYS = new String[] {
    9.27 +        "doclet.Interface", "doclet.Class",
    9.28 +        "doclet.Enum", "doclet.Exceptions",
    9.29 +        "doclet.Errors",
    9.30 +        "doclet.AnnotationType",
    9.31 +        "doclet.Field",
    9.32 +        "doclet.Method", "doclet.Constructor",
    9.33 +        "doclet.Enum_Constant",
    9.34 +        "doclet.Annotation_Type_Member"
    9.35 +    };
    9.36 +
    9.37      private AbstractMemberWriter[] writers;
    9.38  
    9.39      private ConfigurationImpl configuration;
    9.40 @@ -119,11 +142,20 @@
    9.41          ulEnd();
    9.42          println();
    9.43  
    9.44 +        String memberTableSummary;
    9.45 +        String[] memberTableHeader = new String[1];
    9.46          for (int i = 0; i < DeprecatedAPIListBuilder.NUM_TYPES; i++) {
    9.47              if (deprapi.hasDocumentation(i)) {
    9.48                  writeAnchor(deprapi, i);
    9.49 +                memberTableSummary =
    9.50 +                        configuration.getText("doclet.Member_Table_Summary",
    9.51 +                        configuration.getText(HEADING_KEYS[i]),
    9.52 +                        configuration.getText(SUMMARY_KEYS[i]));
    9.53 +                memberTableHeader[0] = configuration.getText("doclet.0_and_1",
    9.54 +                        configuration.getText(HEADER_KEYS[i]),
    9.55 +                        configuration.getText("doclet.Description"));
    9.56                  writers[i].printDeprecatedAPI(deprapi.getList(i),
    9.57 -                    HEADING_KEYS[i]);
    9.58 +                    HEADING_KEYS[i], memberTableSummary, memberTableHeader);
    9.59              }
    9.60          }
    9.61          printDeprecatedFooter();
    10.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
    10.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
    10.3 @@ -35,6 +35,7 @@
    10.4   * Writes enum constant documentation in HTML format.
    10.5   *
    10.6   * @author Jamie Ho
    10.7 + * @author Bhavesh Patel (Modified)
    10.8   */
    10.9  public class EnumConstantWriterImpl extends AbstractMemberWriter
   10.10      implements EnumConstantWriter, MemberSummaryWriter {
   10.11 @@ -194,8 +195,23 @@
   10.12          return VisibleMemberMap.ENUM_CONSTANTS;
   10.13      }
   10.14  
   10.15 -    public void printSummaryLabel(ClassDoc cd) {
   10.16 -        writer.strongText("doclet.Enum_Constant_Summary");
   10.17 +    public void printSummaryLabel() {
   10.18 +        writer.printText("doclet.Enum_Constant_Summary");
   10.19 +    }
   10.20 +
   10.21 +    public void printTableSummary() {
   10.22 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
   10.23 +                configuration().getText("doclet.Enum_Constant_Summary"),
   10.24 +                configuration().getText("doclet.enum_constants")));
   10.25 +    }
   10.26 +
   10.27 +    public void printSummaryTableHeader(ProgramElementDoc member) {
   10.28 +        String[] header = new String[] {
   10.29 +            configuration().getText("doclet.0_and_1",
   10.30 +                    configuration().getText("doclet.Enum_Constant"),
   10.31 +                    configuration().getText("doclet.Description"))
   10.32 +        };
   10.33 +        writer.summaryTableHeader(header, "col");
   10.34      }
   10.35  
   10.36      public void printSummaryAnchor(ClassDoc cd) {
    11.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
    11.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
    11.3 @@ -37,6 +37,7 @@
    11.4   * @author Robert Field
    11.5   * @author Atul M Dambalkar
    11.6   * @author Jamie Ho (rewrite)
    11.7 + * @author Bhavesh Patel (Modified)
    11.8   */
    11.9  public class FieldWriterImpl extends AbstractMemberWriter
   11.10      implements FieldWriter, MemberSummaryWriter {
   11.11 @@ -236,8 +237,24 @@
   11.12          return VisibleMemberMap.FIELDS;
   11.13      }
   11.14  
   11.15 -    public void printSummaryLabel(ClassDoc cd) {
   11.16 -        writer.strongText("doclet.Field_Summary");
   11.17 +    public void printSummaryLabel() {
   11.18 +        writer.printText("doclet.Field_Summary");
   11.19 +    }
   11.20 +
   11.21 +    public void printTableSummary() {
   11.22 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
   11.23 +                configuration().getText("doclet.Field_Summary"),
   11.24 +                configuration().getText("doclet.fields")));
   11.25 +    }
   11.26 +
   11.27 +    public void printSummaryTableHeader(ProgramElementDoc member) {
   11.28 +        String[] header = new String[] {
   11.29 +            writer.getModifierTypeHeader(),
   11.30 +            configuration().getText("doclet.0_and_1",
   11.31 +                    configuration().getText("doclet.Field"),
   11.32 +                    configuration().getText("doclet.Description"))
   11.33 +        };
   11.34 +        writer.summaryTableHeader(header, "col");
   11.35      }
   11.36  
   11.37      public void printSummaryAnchor(ClassDoc cd) {
    12.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java	Thu Mar 26 16:48:53 2009 -0700
    12.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java	Wed Apr 01 08:58:42 2009 -0700
    12.3 @@ -236,17 +236,19 @@
    12.4              configuration.tagletManager.getCustomTags(doc),
    12.5                  getTagletWriterInstance(false), output);
    12.6          String outputString = output.toString().trim();
    12.7 -        // For RootDoc and ClassDoc, this section is not the definition description
    12.8 -        // but the start of definition list.
    12.9 +        // For RootDoc, ClassDoc and PackageDoc, this section is not the
   12.10 +        // definition description but the start of definition list.
   12.11          if (!outputString.isEmpty()) {
   12.12 -            if (!(doc instanceof RootDoc || doc instanceof ClassDoc)) {
   12.13 +            if (!(doc instanceof RootDoc || doc instanceof ClassDoc ||
   12.14 +                    doc instanceof PackageDoc)) {
   12.15                  printMemberDetailsListStartTag();
   12.16                  dd();
   12.17              }
   12.18              printTagsInfoHeader();
   12.19              print(outputString);
   12.20              printTagsInfoFooter();
   12.21 -            if (!(doc instanceof RootDoc || doc instanceof ClassDoc))
   12.22 +            if (!(doc instanceof RootDoc || doc instanceof ClassDoc ||
   12.23 +                    doc instanceof PackageDoc))
   12.24                  ddEnd();
   12.25          }
   12.26      }
   12.27 @@ -785,6 +787,15 @@
   12.28      }
   12.29  
   12.30      /**
   12.31 +     * Print the Html table tag for the index summary tables.
   12.32 +     *
   12.33 +     * @param summary the summary for the table tag summary attribute.
   12.34 +     */
   12.35 +    public void tableIndexSummary(String summary) {
   12.36 +        table(1, "100%", 3, 0, summary);
   12.37 +    }
   12.38 +
   12.39 +    /**
   12.40       * Same as {@link #tableIndexSummary()}.
   12.41       */
   12.42      public void tableIndexDetail() {
   12.43 @@ -800,6 +811,40 @@
   12.44      }
   12.45  
   12.46      /**
   12.47 +     * Print table caption.
   12.48 +     */
   12.49 +    public void tableCaptionStart() {
   12.50 +        captionStyle("TableCaption");
   12.51 +    }
   12.52 +
   12.53 +    /**
   12.54 +     * Print table sub-caption.
   12.55 +     */
   12.56 +    public void tableSubCaptionStart() {
   12.57 +        captionStyle("TableSubCaption");
   12.58 +    }
   12.59 +
   12.60 +    /**
   12.61 +     * Print table caption end tags.
   12.62 +     */
   12.63 +    public void tableCaptionEnd() {
   12.64 +        captionEnd();
   12.65 +    }
   12.66 +
   12.67 +    /**
   12.68 +     * Print summary table header.
   12.69 +     */
   12.70 +    public void summaryTableHeader(String[] header, String scope) {
   12.71 +        tr();
   12.72 +        for ( int i=0; i < header.length; i++ ) {
   12.73 +            thScopeNoWrap("TableHeader", scope);
   12.74 +            print(header[i]);
   12.75 +            thEnd();
   12.76 +        }
   12.77 +        trEnd();
   12.78 +    }
   12.79 +
   12.80 +    /**
   12.81       * Prine table header information about color, column span and the font.
   12.82       *
   12.83       * @param color Background color.
    13.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
    13.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
    13.3 @@ -38,6 +38,7 @@
    13.4   * @author Robert Field
    13.5   * @author Atul M Dambalkar
    13.6   * @author Jamie Ho (rewrite)
    13.7 + * @author Bhavesh Patel (Modified)
    13.8   */
    13.9  public class MethodWriterImpl extends AbstractExecutableMemberWriter
   13.10          implements MethodWriter, MemberSummaryWriter {
   13.11 @@ -255,8 +256,24 @@
   13.12          return VisibleMemberMap.METHODS;
   13.13      }
   13.14  
   13.15 -    public void printSummaryLabel(ClassDoc cd) {
   13.16 -        writer.strongText("doclet.Method_Summary");
   13.17 +    public void printSummaryLabel() {
   13.18 +        writer.printText("doclet.Method_Summary");
   13.19 +    }
   13.20 +
   13.21 +    public void printTableSummary() {
   13.22 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
   13.23 +                configuration().getText("doclet.Method_Summary"),
   13.24 +                configuration().getText("doclet.methods")));
   13.25 +    }
   13.26 +
   13.27 +    public void printSummaryTableHeader(ProgramElementDoc member) {
   13.28 +        String[] header = new String[] {
   13.29 +            writer.getModifierTypeHeader(),
   13.30 +            configuration().getText("doclet.0_and_1",
   13.31 +                    configuration().getText("doclet.Method"),
   13.32 +                    configuration().getText("doclet.Description"))
   13.33 +        };
   13.34 +        writer.summaryTableHeader(header, "col");
   13.35      }
   13.36  
   13.37      public void printSummaryAnchor(ClassDoc cd) {
    14.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
    14.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
    14.3 @@ -37,6 +37,7 @@
    14.4   * @author Robert Field
    14.5   * @author Atul M Dambalkar
    14.6   * @author Jamie Ho (rewrite)
    14.7 + * @author Bhavesh Patel (Modified)
    14.8   */
    14.9  public class NestedClassWriterImpl extends AbstractMemberWriter
   14.10      implements MemberSummaryWriter {
   14.11 @@ -147,8 +148,35 @@
   14.12          return VisibleMemberMap.INNERCLASSES;
   14.13      }
   14.14  
   14.15 -    public void printSummaryLabel(ClassDoc cd) {
   14.16 -        writer.strongText("doclet.Nested_Class_Summary");
   14.17 +    public void printSummaryLabel() {
   14.18 +        writer.printText("doclet.Nested_Class_Summary");
   14.19 +    }
   14.20 +
   14.21 +    public void printTableSummary() {
   14.22 +        writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary",
   14.23 +                configuration().getText("doclet.Nested_Class_Summary"),
   14.24 +                configuration().getText("doclet.nested_classes")));
   14.25 +    }
   14.26 +
   14.27 +    public void printSummaryTableHeader(ProgramElementDoc member) {
   14.28 +        String[] header;
   14.29 +        if (member.isInterface()) {
   14.30 +            header = new String[] {
   14.31 +                writer.getModifierTypeHeader(),
   14.32 +                configuration().getText("doclet.0_and_1",
   14.33 +                        configuration().getText("doclet.Interface"),
   14.34 +                        configuration().getText("doclet.Description"))
   14.35 +            };
   14.36 +        }
   14.37 +        else {
   14.38 +            header = new String[] {
   14.39 +                writer.getModifierTypeHeader(),
   14.40 +                configuration().getText("doclet.0_and_1",
   14.41 +                        configuration().getText("doclet.Class"),
   14.42 +                        configuration().getText("doclet.Description"))
   14.43 +            };
   14.44 +        }
   14.45 +        writer.summaryTableHeader(header, "col");
   14.46      }
   14.47  
   14.48      public void printSummaryAnchor(ClassDoc cd) {
    15.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java	Thu Mar 26 16:48:53 2009 -0700
    15.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java	Wed Apr 01 08:58:42 2009 -0700
    15.3 @@ -114,7 +114,7 @@
    15.4       *
    15.5       * @param text Text string will not be used in this method.
    15.6       */
    15.7 -    protected void printIndexHeader(String text) {
    15.8 +    protected void printIndexHeader(String text, String tableSummary) {
    15.9          printTableHeader(false);
   15.10      }
   15.11  
    16.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java	Thu Mar 26 16:48:53 2009 -0700
    16.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java	Wed Apr 01 08:58:42 2009 -0700
    16.3 @@ -36,6 +36,7 @@
    16.4   * with the "pacakge-summary.html" file for the clicked package.
    16.5   *
    16.6   * @author Atul M Dambalkar
    16.7 + * @author Bhavesh Patel (Modified)
    16.8   */
    16.9  public class PackageIndexWriter extends AbstractPackageIndexWriter {
   16.10  
   16.11 @@ -123,7 +124,10 @@
   16.12          List<PackageDoc> list = groupPackageMap.get(groupname);
   16.13              if (list != null && list.size() > 0) {
   16.14                  printIndexContents(list.toArray(new PackageDoc[list.size()]),
   16.15 -                                    groupname);
   16.16 +                        groupname,
   16.17 +                        configuration.getText("doclet.Member_Table_Summary",
   16.18 +                        groupname,
   16.19 +                        configuration.getText("doclet.packages")));
   16.20              }
   16.21          }
   16.22      }
   16.23 @@ -149,11 +153,12 @@
   16.24      /**
   16.25       * Print Html tags for the table for this package index.
   16.26       */
   16.27 -    protected void printIndexHeader(String text) {
   16.28 -        tableIndexSummary();
   16.29 -        tableHeaderStart("#CCCCFF");
   16.30 -        strong(text);
   16.31 -        tableHeaderEnd();
   16.32 +    protected void printIndexHeader(String text, String tableSummary) {
   16.33 +        tableIndexSummary(tableSummary);
   16.34 +        tableCaptionStart();
   16.35 +        print(text);
   16.36 +        tableCaptionEnd();
   16.37 +        summaryTableHeader(packageTableHeader, "col");
   16.38      }
   16.39  
   16.40      /**
    17.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java	Thu Mar 26 16:48:53 2009 -0700
    17.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java	Wed Apr 01 08:58:42 2009 -0700
    17.3 @@ -34,6 +34,7 @@
    17.4   * Generate package usage information.
    17.5   *
    17.6   * @author Robert G. Field
    17.7 + * @author Bhavesh Patel (Modified)
    17.8   */
    17.9  public class PackageUseWriter extends SubWriterHolderWriter {
   17.10  
   17.11 @@ -131,11 +132,12 @@
   17.12      }
   17.13  
   17.14      protected void generatePackageList() throws IOException {
   17.15 -        tableIndexSummary();
   17.16 -        tableHeaderStart("#CCCCFF");
   17.17 +        tableIndexSummary(useTableSummary);
   17.18 +        tableCaptionStart();
   17.19          printText("doclet.ClassUse_Packages.that.use.0",
   17.20              getPackageLink(pkgdoc, Util.getPackageName(pkgdoc), false));
   17.21 -        tableHeaderEnd();
   17.22 +        tableCaptionEnd();
   17.23 +        summaryTableHeader(packageTableHeader, "col");
   17.24          Iterator<String> it = usingPackageToUsedClasses.keySet().iterator();
   17.25          while (it.hasNext()) {
   17.26              PackageDoc pkg = configuration.root.packageNamed(it.next());
   17.27 @@ -147,6 +149,11 @@
   17.28      }
   17.29  
   17.30      protected void generateClassList() throws IOException {
   17.31 +        String[] classTableHeader = new String[] {
   17.32 +            configuration.getText("doclet.0_and_1",
   17.33 +                    configuration.getText("doclet.Class"),
   17.34 +                    configuration.getText("doclet.Description"))
   17.35 +        };
   17.36          Iterator<String> itp = usingPackageToUsedClasses.keySet().iterator();
   17.37          while (itp.hasNext()) {
   17.38              String packageName = itp.next();
   17.39 @@ -154,12 +161,14 @@
   17.40              if (usingPackage != null) {
   17.41                  anchor(usingPackage.name());
   17.42              }
   17.43 -            tableIndexSummary();
   17.44 -            tableHeaderStart("#CCCCFF");
   17.45 +            tableIndexSummary(configuration.getText("doclet.Use_Table_Summary",
   17.46 +                    configuration.getText("doclet.classes")));
   17.47 +            tableCaptionStart();
   17.48              printText("doclet.ClassUse_Classes.in.0.used.by.1",
   17.49                  getPackageLink(pkgdoc, Util.getPackageName(pkgdoc), false),
   17.50                  getPackageLink(usingPackage,Util.getPackageName(usingPackage), false));
   17.51 -            tableHeaderEnd();
   17.52 +            tableCaptionEnd();
   17.53 +            summaryTableHeader(classTableHeader, "col");
   17.54              Iterator<ClassDoc> itc =
   17.55                      usingPackageToUsedClasses.get(packageName).iterator();
   17.56              while (itc.hasNext()) {
    18.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java	Thu Mar 26 16:48:53 2009 -0700
    18.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java	Wed Apr 01 08:58:42 2009 -0700
    18.3 @@ -38,6 +38,7 @@
    18.4   * class-kind will update the frame with the clicked class-kind page.
    18.5   *
    18.6   * @author Atul M Dambalkar
    18.7 + * @author Bhavesh Patel (Modified)
    18.8   */
    18.9  public class PackageWriterImpl extends HtmlDocletWriter
   18.10      implements PackageSummaryWriter {
   18.11 @@ -107,14 +108,15 @@
   18.12      /**
   18.13       * {@inheritDoc}
   18.14       */
   18.15 -    public void writeClassesSummary(ClassDoc[] classes, String label) {
   18.16 +    public void writeClassesSummary(ClassDoc[] classes, String label, String tableSummary, String[] tableHeader) {
   18.17          if(classes.length > 0) {
   18.18              Arrays.sort(classes);
   18.19 -            tableIndexSummary();
   18.20 +            tableIndexSummary(tableSummary);
   18.21              boolean printedHeading = false;
   18.22              for (int i = 0; i < classes.length; i++) {
   18.23                  if (!printedHeading) {
   18.24 -                    printFirstRow(label);
   18.25 +                    printTableCaption(label);
   18.26 +                    printFirstRow(tableHeader);
   18.27                      printedHeading = true;
   18.28                  }
   18.29                  if (!Util.isCoreClass(classes[i]) ||
   18.30 @@ -149,14 +151,23 @@
   18.31      }
   18.32  
   18.33      /**
   18.34 +     * Print the table caption for the class-listing.
   18.35 +     *
   18.36 +     * @param label label for the Class kind listing.
   18.37 +     */
   18.38 +    protected void printTableCaption(String label) {
   18.39 +        tableCaptionStart();
   18.40 +        print(label);
   18.41 +        tableCaptionEnd();
   18.42 +    }
   18.43 +
   18.44 +    /**
   18.45       * Print the table heading for the class-listing.
   18.46       *
   18.47 -     * @param label Label for the Class kind listing.
   18.48 +     * @param tableHeader table header string for the Class listing.
   18.49       */
   18.50 -    protected void printFirstRow(String label) {
   18.51 -        tableHeaderStart("#CCCCFF");
   18.52 -        strong(label);
   18.53 -        tableHeaderEnd();
   18.54 +    protected void printFirstRow(String[] tableHeader) {
   18.55 +        summaryTableHeader(tableHeader, "col");
   18.56      }
   18.57  
   18.58      /**
    19.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/StylesheetWriter.java	Thu Mar 26 16:48:53 2009 -0700
    19.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/StylesheetWriter.java	Wed Apr 01 08:58:42 2009 -0700
    19.3 @@ -33,6 +33,7 @@
    19.4   * Writes the style sheet for the doclet output.
    19.5   *
    19.6   * @author Atul M Dambalkar
    19.7 + * @author Bhavesh Patel (Modified)
    19.8   */
    19.9  public class StylesheetWriter extends HtmlDocletWriter {
   19.10  
   19.11 @@ -115,6 +116,13 @@
   19.12          println("background-color:#FFFFFF; color:#000000}");
   19.13          print(".NavBarCell3    { font-family: Arial, Helvetica, sans-serif; ");
   19.14          println("background-color:#FFFFFF; color:#000000}");
   19.15 +
   19.16 +        print("/* "); printText("doclet.Style_line_12"); println(" */");
   19.17 +        print(".TableCaption     { background: #CCCCFF; color:#000000; text-align: left; font-size: 150%; font-weight: bold; border-left: 2px ridge; border-right: 2px ridge; border-top: 2px ridge; padding-left: 5px; }");
   19.18 +        print(" /* "); printText("doclet.Style_line_5"); println(" */");
   19.19 +        print(".TableSubCaption  { background: #EEEEFF; color:#000000; text-align: left; font-weight: bold; border-left: 2px ridge; border-right: 2px ridge; border-top: 2px ridge; padding-left: 5px; }");
   19.20 +        print(" /* "); printText("doclet.Style_line_6"); println(" */");
   19.21 +        print(".TableHeader     { text-align: center; font-size: 80%; font-weight: bold; }");
   19.22          println("");
   19.23  
   19.24      }
    20.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java	Thu Mar 26 16:48:53 2009 -0700
    20.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java	Wed Apr 01 08:58:42 2009 -0700
    20.3 @@ -43,6 +43,7 @@
    20.4   *
    20.5   * @author Robert Field
    20.6   * @author Atul M Dambalkar
    20.7 + * @author Bhavesh Patel (Modified)
    20.8   */
    20.9  public abstract class SubWriterHolderWriter extends HtmlDocletWriter {
   20.10  
   20.11 @@ -72,10 +73,11 @@
   20.12  
   20.13      public void printSummaryHeader(AbstractMemberWriter mw, ClassDoc cd) {
   20.14          mw.printSummaryAnchor(cd);
   20.15 -        tableIndexSummary();
   20.16 -        tableHeaderStart("#CCCCFF");
   20.17 -        mw.printSummaryLabel(cd);
   20.18 -        tableHeaderEnd();
   20.19 +        mw.printTableSummary();
   20.20 +        tableCaptionStart();
   20.21 +        mw.printSummaryLabel();
   20.22 +        tableCaptionEnd();
   20.23 +        mw.printSummaryTableHeader(cd);
   20.24      }
   20.25  
   20.26      public void printTableHeadingBackground(String str) {
    21.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java	Thu Mar 26 16:48:53 2009 -0700
    21.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java	Wed Apr 01 08:58:42 2009 -0700
    21.3 @@ -37,6 +37,7 @@
    21.4   *
    21.5   * @since 1.2
    21.6   * @author Atul M Dambalkar
    21.7 + * @author Bhavesh Patel (Modified)
    21.8   */
    21.9  public class HtmlWriter extends PrintWriter {
   21.10  
   21.11 @@ -67,6 +68,21 @@
   21.12      protected boolean memberDetailsListPrinted;
   21.13  
   21.14      /**
   21.15 +     * Header for tables displaying packages and description..
   21.16 +     */
   21.17 +    protected final String[] packageTableHeader;
   21.18 +
   21.19 +    /**
   21.20 +     * Summary for use tables displaying class and package use.
   21.21 +     */
   21.22 +    protected final String useTableSummary;
   21.23 +
   21.24 +    /**
   21.25 +     * Column header for class docs displaying Modifier and Type header.
   21.26 +     */
   21.27 +    protected final String modifierTypeHeader;
   21.28 +
   21.29 +    /**
   21.30       * Constructor.
   21.31       *
   21.32       * @param path The directory path to be created for this file
   21.33 @@ -86,6 +102,15 @@
   21.34          this.configuration = configuration;
   21.35          htmlFilename = filename;
   21.36          this.memberDetailsListPrinted = false;
   21.37 +        packageTableHeader = new String[] {
   21.38 +            configuration.getText("doclet.Package"),
   21.39 +            configuration.getText("doclet.Description")
   21.40 +        };
   21.41 +        useTableSummary = configuration.getText("doclet.Use_Table_Summary",
   21.42 +                configuration.getText("doclet.packages"));
   21.43 +        modifierTypeHeader = configuration.getText("doclet.0_and_1",
   21.44 +                configuration.getText("doclet.Modifier"),
   21.45 +                configuration.getText("doclet.Type"));
   21.46      }
   21.47  
   21.48      /**
   21.49 @@ -803,6 +828,26 @@
   21.50      }
   21.51  
   21.52      /**
   21.53 +     * Print HTML &lt;TABLE BORDER="border" WIDTH="width"
   21.54 +     * CELLPADDING="cellpadding" CELLSPACING="cellspacing" SUMMARY="summary"&gt; tag.
   21.55 +     *
   21.56 +     * @param border       Border size.
   21.57 +     * @param width        Width of the table.
   21.58 +     * @param cellpadding  Cellpadding for the table cells.
   21.59 +     * @param cellspacing  Cellspacing for the table cells.
   21.60 +     * @param summary      Table summary.
   21.61 +     */
   21.62 +    public void table(int border, String width, int cellpadding,
   21.63 +                      int cellspacing, String summary) {
   21.64 +        println(DocletConstants.NL +
   21.65 +                "<TABLE BORDER=\"" + border +
   21.66 +                "\" WIDTH=\"" + width +
   21.67 +                "\" CELLPADDING=\"" + cellpadding +
   21.68 +                "\" CELLSPACING=\"" + cellspacing +
   21.69 +                "\" SUMMARY=\"" + summary + "\">");
   21.70 +    }
   21.71 +
   21.72 +    /**
   21.73       * Print HTML &lt;TABLE BORDER="border" CELLPADDING="cellpadding"
   21.74       * CELLSPACING="cellspacing"&gt; tag.
   21.75       *
   21.76 @@ -819,6 +864,23 @@
   21.77      }
   21.78  
   21.79      /**
   21.80 +     * Print HTML &lt;TABLE BORDER="border" CELLPADDING="cellpadding"
   21.81 +     * CELLSPACING="cellspacing" SUMMARY="summary"&gt; tag.
   21.82 +     *
   21.83 +     * @param border       Border size.
   21.84 +     * @param cellpadding  Cellpadding for the table cells.
   21.85 +     * @param cellspacing  Cellspacing for the table cells.
   21.86 +     * @param summary      Table summary.
   21.87 +     */
   21.88 +    public void table(int border, int cellpadding, int cellspacing, String summary) {
   21.89 +        println(DocletConstants.NL +
   21.90 +                "<TABLE BORDER=\"" + border +
   21.91 +                "\" CELLPADDING=\"" + cellpadding +
   21.92 +                "\" CELLSPACING=\"" + cellspacing +
   21.93 +                "\" SUMMARY=\"" + summary + "\">");
   21.94 +    }
   21.95 +
   21.96 +    /**
   21.97       * Print HTML &lt;TABLE BORDER="border" WIDTH="width"&gt;
   21.98       *
   21.99       * @param border       Border size.
  21.100 @@ -913,6 +975,23 @@
  21.101      }
  21.102  
  21.103      /**
  21.104 +     * Print &lt;CAPTION CLASS="stylename"&gt; tag. Adds a newline character
  21.105 +     * at the end.
  21.106 +     *
  21.107 +     * @param stylename style to be applied.
  21.108 +     */
  21.109 +    public void captionStyle(String stylename) {
  21.110 +        println("<CAPTION CLASS=\"" + stylename + "\">");
  21.111 +    }
  21.112 +
  21.113 +    /**
  21.114 +     * Print &lt;/CAPTION&gt; tag. Add a newline character at the end.
  21.115 +     */
  21.116 +    public void captionEnd() {
  21.117 +        println("</CAPTION>");
  21.118 +    }
  21.119 +
  21.120 +    /**
  21.121       * Print &lt;TR BGCOLOR="color" CLASS="stylename"&gt; tag. Adds a newline character
  21.122       * at the end.
  21.123       *
  21.124 @@ -953,6 +1032,23 @@
  21.125      }
  21.126  
  21.127      /**
  21.128 +     * Print &lt;TH CLASS="stylename" SCOPE="scope" NOWRAP&gt; tag.
  21.129 +     *
  21.130 +     * @param stylename style to be applied.
  21.131 +     * @param scope the scope attribute.
  21.132 +     */
  21.133 +    public void thScopeNoWrap(String stylename, String scope) {
  21.134 +        print("<TH CLASS=\"" + stylename + "\" SCOPE=\"" + scope + "\" NOWRAP>");
  21.135 +    }
  21.136 +
  21.137 +    /*
  21.138 +     * Returns a header for Modifier and Type column of a table.
  21.139 +     */
  21.140 +    public String getModifierTypeHeader() {
  21.141 +        return modifierTypeHeader;
  21.142 +    }
  21.143 +
  21.144 +    /**
  21.145       * Print &lt;TH align="align" COLSPAN=i&gt; tag.
  21.146       *
  21.147       * @param align the align attribute.
    22.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties	Thu Mar 26 16:48:53 2009 -0700
    22.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties	Wed Apr 01 08:58:42 2009 -0700
    22.3 @@ -83,6 +83,17 @@
    22.4  doclet.Deprecated_Methods=Deprecated Methods
    22.5  doclet.Deprecated_Enum_Constants=Deprecated Enum Constants
    22.6  doclet.Deprecated_Annotation_Type_Members=Deprecated Annotation Type Elements
    22.7 +doclet.deprecated_classes=deprecated classes
    22.8 +doclet.deprecated_enums=deprecated enums
    22.9 +doclet.deprecated_interfaces=deprecated interfaces
   22.10 +doclet.deprecated_exceptions=deprecated exceptions
   22.11 +doclet.deprecated_annotation_types=deprecated annotation types
   22.12 +doclet.deprecated_errors=deprecated errors
   22.13 +doclet.deprecated_fields=deprecated fields
   22.14 +doclet.deprecated_constructors=deprecated constructors
   22.15 +doclet.deprecated_methods=deprecated methods
   22.16 +doclet.deprecated_enum_constants=deprecated enum constants
   22.17 +doclet.deprecated_annotation_type_members=deprecated annotation type elements
   22.18  doclet.Frame_Output=Frame Output
   22.19  doclet.Docs_generated_by_Javadoc=Documentation generated by Javadoc.
   22.20  doclet.Generated_Docs_Untitled=Generated Documentation (Untitled)
   22.21 @@ -171,6 +182,7 @@
   22.22  doclet.Style_line_9=Example of smaller, sans-serif font in frames
   22.23  doclet.Style_line_10=Navigation bar fonts and colors
   22.24  doclet.Style_line_11=Dark Blue
   22.25 +doclet.Style_line_12=Table caption style
   22.26  doclet.ClassUse_Packages.that.use.0=Packages that use {0}
   22.27  doclet.ClassUse_Uses.of.0.in.1=Uses of {0} in {1}
   22.28  doclet.ClassUse_Classes.in.0.used.by.1=Classes in {0} used by {1}
    23.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java	Thu Mar 26 16:48:53 2009 -0700
    23.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java	Wed Apr 01 08:58:42 2009 -0700
    23.3 @@ -64,7 +64,7 @@
    23.4       * @param classes the array of classes to document.
    23.5       * @param label the label for this table.
    23.6       */
    23.7 -    public abstract void writeClassesSummary(ClassDoc[] classes, String label);
    23.8 +    public abstract void writeClassesSummary(ClassDoc[] classes, String label, String tableSummary, String[] tableHeader);
    23.9  
   23.10      /**
   23.11       * Write the header for the summary.
    24.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java	Thu Mar 26 16:48:53 2009 -0700
    24.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java	Wed Apr 01 08:58:42 2009 -0700
    24.3 @@ -40,6 +40,7 @@
    24.4   * Do not use it as an API
    24.5   *
    24.6   * @author Jamie Ho
    24.7 + * @author Bhavesh Patel (Modified)
    24.8   * @since 1.5
    24.9   */
   24.10  public class PackageSummaryBuilder extends AbstractBuilder {
   24.11 @@ -184,7 +185,15 @@
   24.12           * Build the summary for the classes in this package.
   24.13           */
   24.14          public void buildClassSummary() {
   24.15 -                ClassDoc[] classes =
   24.16 +            String classTableSummary =
   24.17 +                    configuration.getText("doclet.Member_Table_Summary",
   24.18 +                    configuration.getText("doclet.Class_Summary"),
   24.19 +                    configuration.getText("doclet.classes"));
   24.20 +            String[] classTableHeader = new String[] {
   24.21 +                configuration.getText("doclet.Class"),
   24.22 +                configuration.getText("doclet.Description")
   24.23 +            };
   24.24 +            ClassDoc[] classes =
   24.25                          packageDoc.isIncluded()
   24.26                                  ? packageDoc.ordinaryClasses()
   24.27                                  : configuration.classDocCatalog.ordinaryClasses(
   24.28 @@ -192,7 +201,8 @@
   24.29                  if (classes.length > 0) {
   24.30                          packageWriter.writeClassesSummary(
   24.31                                  classes,
   24.32 -                                configuration.getText("doclet.Class_Summary"));
   24.33 +                                configuration.getText("doclet.Class_Summary"),
   24.34 +                                classTableSummary, classTableHeader);
   24.35                  }
   24.36          }
   24.37  
   24.38 @@ -200,7 +210,15 @@
   24.39           * Build the summary for the interfaces in this package.
   24.40           */
   24.41          public void buildInterfaceSummary() {
   24.42 -                ClassDoc[] interfaces =
   24.43 +            String interfaceTableSummary =
   24.44 +                    configuration.getText("doclet.Member_Table_Summary",
   24.45 +                    configuration.getText("doclet.Interface_Summary"),
   24.46 +                    configuration.getText("doclet.interfaces"));
   24.47 +            String[] interfaceTableHeader = new String[] {
   24.48 +                configuration.getText("doclet.Interface"),
   24.49 +                configuration.getText("doclet.Description")
   24.50 +            };
   24.51 +            ClassDoc[] interfaces =
   24.52                          packageDoc.isIncluded()
   24.53                                  ? packageDoc.interfaces()
   24.54                                  : configuration.classDocCatalog.interfaces(
   24.55 @@ -208,7 +226,8 @@
   24.56                  if (interfaces.length > 0) {
   24.57                          packageWriter.writeClassesSummary(
   24.58                                  interfaces,
   24.59 -                                configuration.getText("doclet.Interface_Summary"));
   24.60 +                                configuration.getText("doclet.Interface_Summary"),
   24.61 +                                interfaceTableSummary, interfaceTableHeader);
   24.62                  }
   24.63          }
   24.64  
   24.65 @@ -216,7 +235,15 @@
   24.66           * Build the summary for the enums in this package.
   24.67           */
   24.68          public void buildAnnotationTypeSummary() {
   24.69 -                ClassDoc[] annotationTypes =
   24.70 +            String annotationtypeTableSummary =
   24.71 +                    configuration.getText("doclet.Member_Table_Summary",
   24.72 +                    configuration.getText("doclet.Annotation_Types_Summary"),
   24.73 +                    configuration.getText("doclet.annotationtypes"));
   24.74 +            String[] annotationtypeTableHeader = new String[] {
   24.75 +                configuration.getText("doclet.AnnotationType"),
   24.76 +                configuration.getText("doclet.Description")
   24.77 +            };
   24.78 +            ClassDoc[] annotationTypes =
   24.79                          packageDoc.isIncluded()
   24.80                                  ? packageDoc.annotationTypes()
   24.81                                  : configuration.classDocCatalog.annotationTypes(
   24.82 @@ -224,7 +251,8 @@
   24.83                  if (annotationTypes.length > 0) {
   24.84                          packageWriter.writeClassesSummary(
   24.85                                  annotationTypes,
   24.86 -                                configuration.getText("doclet.Annotation_Types_Summary"));
   24.87 +                                configuration.getText("doclet.Annotation_Types_Summary"),
   24.88 +                                annotationtypeTableSummary, annotationtypeTableHeader);
   24.89                  }
   24.90          }
   24.91  
   24.92 @@ -232,7 +260,15 @@
   24.93           * Build the summary for the enums in this package.
   24.94           */
   24.95          public void buildEnumSummary() {
   24.96 -                ClassDoc[] enums =
   24.97 +            String enumTableSummary =
   24.98 +                    configuration.getText("doclet.Member_Table_Summary",
   24.99 +                    configuration.getText("doclet.Enum_Summary"),
  24.100 +                    configuration.getText("doclet.enums"));
  24.101 +            String[] enumTableHeader = new String[] {
  24.102 +                configuration.getText("doclet.Enum"),
  24.103 +                configuration.getText("doclet.Description")
  24.104 +            };
  24.105 +            ClassDoc[] enums =
  24.106                          packageDoc.isIncluded()
  24.107                                  ? packageDoc.enums()
  24.108                                  : configuration.classDocCatalog.enums(
  24.109 @@ -240,7 +276,8 @@
  24.110                  if (enums.length > 0) {
  24.111                          packageWriter.writeClassesSummary(
  24.112                                  enums,
  24.113 -                                configuration.getText("doclet.Enum_Summary"));
  24.114 +                                configuration.getText("doclet.Enum_Summary"),
  24.115 +                                enumTableSummary, enumTableHeader);
  24.116                  }
  24.117          }
  24.118  
  24.119 @@ -248,7 +285,15 @@
  24.120           * Build the summary for the exceptions in this package.
  24.121           */
  24.122          public void buildExceptionSummary() {
  24.123 -                ClassDoc[] exceptions =
  24.124 +            String exceptionTableSummary =
  24.125 +                    configuration.getText("doclet.Member_Table_Summary",
  24.126 +                    configuration.getText("doclet.Exception_Summary"),
  24.127 +                    configuration.getText("doclet.exceptions"));
  24.128 +            String[] exceptionTableHeader = new String[] {
  24.129 +                configuration.getText("doclet.Exception"),
  24.130 +                configuration.getText("doclet.Description")
  24.131 +            };
  24.132 +            ClassDoc[] exceptions =
  24.133                          packageDoc.isIncluded()
  24.134                                  ? packageDoc.exceptions()
  24.135                                  : configuration.classDocCatalog.exceptions(
  24.136 @@ -256,7 +301,8 @@
  24.137                  if (exceptions.length > 0) {
  24.138                          packageWriter.writeClassesSummary(
  24.139                                  exceptions,
  24.140 -                                configuration.getText("doclet.Exception_Summary"));
  24.141 +                                configuration.getText("doclet.Exception_Summary"),
  24.142 +                                exceptionTableSummary, exceptionTableHeader);
  24.143                  }
  24.144          }
  24.145  
  24.146 @@ -264,7 +310,15 @@
  24.147           * Build the summary for the errors in this package.
  24.148           */
  24.149          public void buildErrorSummary() {
  24.150 -                ClassDoc[] errors =
  24.151 +            String errorTableSummary =
  24.152 +                    configuration.getText("doclet.Member_Table_Summary",
  24.153 +                    configuration.getText("doclet.Error_Summary"),
  24.154 +                    configuration.getText("doclet.errors"));
  24.155 +            String[] errorTableHeader = new String[] {
  24.156 +                configuration.getText("doclet.Error"),
  24.157 +                configuration.getText("doclet.Description")
  24.158 +            };
  24.159 +            ClassDoc[] errors =
  24.160                          packageDoc.isIncluded()
  24.161                                  ? packageDoc.errors()
  24.162                                  : configuration.classDocCatalog.errors(
  24.163 @@ -272,7 +326,8 @@
  24.164                  if (errors.length > 0) {
  24.165                          packageWriter.writeClassesSummary(
  24.166                                  errors,
  24.167 -                                configuration.getText("doclet.Error_Summary"));
  24.168 +                                configuration.getText("doclet.Error_Summary"),
  24.169 +                                errorTableSummary, errorTableHeader);
  24.170                  }
  24.171          }
  24.172  
    25.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties	Thu Mar 26 16:48:53 2009 -0700
    25.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties	Wed Apr 01 08:58:42 2009 -0700
    25.3 @@ -82,6 +82,7 @@
    25.4  doclet.Errors=Errors
    25.5  doclet.Classes=Classes
    25.6  doclet.Packages=Packages
    25.7 +doclet.packages=packages
    25.8  doclet.All_Classes=All Classes
    25.9  doclet.All_Superinterfaces=All Superinterfaces:
   25.10  doclet.All_Implemented_Interfaces=All Implemented Interfaces:
   25.11 @@ -92,14 +93,20 @@
   25.12  doclet.Class=Class
   25.13  doclet.AnnotationType=Annotation Type
   25.14  doclet.annotationtype=annotation type
   25.15 +doclet.annotationtypes=annotation types
   25.16  doclet.Enum=Enum
   25.17  doclet.enum=enum
   25.18 +doclet.enums=enums
   25.19  doclet.interface=interface
   25.20 +doclet.interfaces=interfaces
   25.21  doclet.class=class
   25.22 +doclet.classes=classes
   25.23  doclet.Error=Error
   25.24  doclet.error=error
   25.25 +doclet.errors=errors
   25.26  doclet.Exception=Exception
   25.27  doclet.exception=exception
   25.28 +doclet.exceptions=exceptions
   25.29  doclet.extended_by=extended by
   25.30  doclet.extends=extends
   25.31  doclet.Package_private=(package private)
   25.32 @@ -125,6 +132,32 @@
   25.33  doclet.value_tag_invalid_constant=@value tag (which references {0}) can only be used in constants.
   25.34  doclet.dest_dir_create=Creating destination directory: "{0}"
   25.35  doclet.in={0} in {1}
   25.36 +doclet.Use_Table_Summary=Use table, listing {0}, and an explanation
   25.37 +doclet.Constants_Table_Summary={0} table, listing constant fields, and values
   25.38 +doclet.Member_Table_Summary={0} table, listing {1}, and an explanation
   25.39 +doclet.fields=fields
   25.40 +doclet.constructors=constructors
   25.41 +doclet.methods=methods
   25.42 +doclet.annotation_type_optional_members=optional elements
   25.43 +doclet.annotation_type_required_members=required elements
   25.44 +doclet.enum_constants=enum constants
   25.45 +doclet.nested_classes=nested classes
   25.46 +doclet.subclasses=subclasses
   25.47 +doclet.subinterfaces=subinterfaces
   25.48 +doclet.Modifier=Modifier
   25.49 +doclet.Type=Type
   25.50 +doclet.Field=Field
   25.51 +doclet.Constructor=Constructor
   25.52 +doclet.Method=Method
   25.53 +doclet.Annotation_Type_Optional_Member=Optional Element
   25.54 +doclet.Annotation_Type_Required_Member=Required Element
   25.55 +doclet.Annotation_Type_Member=Annotation Type Element
   25.56 +doclet.Enum_Constant=Enum Constant
   25.57 +doclet.Class=Class
   25.58 +doclet.Description=Description
   25.59 +doclet.ConstantField=Constant Field
   25.60 +doclet.Value=Value
   25.61 +doclet.0_and_1={0} and {1}
   25.62  
   25.63  #Documentation for Enums
   25.64  doclet.enum_values_doc=\n\
    26.1 --- a/test/com/sun/javadoc/testHeadings/TestHeadings.java	Thu Mar 26 16:48:53 2009 -0700
    26.2 +++ b/test/com/sun/javadoc/testHeadings/TestHeadings.java	Wed Apr 01 08:58:42 2009 -0700
    26.3 @@ -47,14 +47,16 @@
    26.4      private static final String[][] TEST = {
    26.5          //Package summary
    26.6          {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
    26.7 -            "<TH ALIGN=\"left\" COLSPAN=\"2\"><FONT SIZE=\"+2\">" + NL +
    26.8 -            "<STRONG>Class Summary</STRONG></FONT></TH>"
    26.9 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
   26.10 +            "Class</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
   26.11 +            " NOWRAP>Description</TH>"
   26.12          },
   26.13  
   26.14          // Class documentation
   26.15          {BUG_ID + FS + "pkg1" + FS + "C1.html",
   26.16 -            "<TH ALIGN=\"left\" COLSPAN=\"2\"><FONT SIZE=\"+2\">" + NL +
   26.17 -            "<STRONG>Field Summary</STRONG></FONT></TH>"
   26.18 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
   26.19 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
   26.20 +            " SCOPE=\"col\" NOWRAP>Field and Description</TH>"
   26.21          },
   26.22          {BUG_ID + FS + "pkg1" + FS + "C1.html",
   26.23              "<TH ALIGN=\"left\"><STRONG>Methods inherited from class " +            "java.lang.Object</STRONG></TH>"
   26.24 @@ -62,29 +64,32 @@
   26.25  
   26.26          // Class use documentation
   26.27          {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
   26.28 -            "<TH ALIGN=\"left\" COLSPAN=\"2\"><FONT SIZE=\"+2\">" + NL +
   26.29 -            "Packages that use <A HREF=\"../../pkg1/C1.html\" " +            "title=\"class in pkg1\">C1</A></FONT></TH>"
   26.30 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
   26.31 +            "Package</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
   26.32 +            " SCOPE=\"col\" NOWRAP>Description</TH>"
   26.33          },
   26.34          {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
   26.35              "<TH ALIGN=\"left\" COLSPAN=\"2\"><FONT SIZE=\"+2\">" + NL +
   26.36              "Uses of <A HREF=\"../../pkg1/C1.html\" " +            "title=\"class in pkg1\">C1</A> in " +            "<A HREF=\"../../pkg2/package-summary.html\">pkg2</A></FONT></TH>"
   26.37          },
   26.38          {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
   26.39 -            "<TH ALIGN=\"left\" COLSPAN=\"2\">Fields in " +            "<A HREF=\"../../pkg2/package-summary.html\">pkg2</A> " +            "declared as <A HREF=\"../../pkg1/C1.html\" " +            "title=\"class in pkg1\">C1</A></FONT></TH>"
   26.40 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
   26.41 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
   26.42 +            " SCOPE=\"col\" NOWRAP>Field and Description</TH>"
   26.43          },
   26.44  
   26.45          // Deprecated
   26.46          {BUG_ID + FS + "deprecated-list.html",
   26.47 -            "<TH ALIGN=\"left\" COLSPAN=\"2\"><FONT SIZE=\"+2\">" + NL +
   26.48 -            "<STRONG>Deprecated Methods</STRONG></FONT></TH>"
   26.49 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
   26.50 +            "Method and Description</TH>"
   26.51          },
   26.52  
   26.53          // Constant values
   26.54          {BUG_ID + FS + "constant-values.html",
   26.55 -            "<TH ALIGN=\"left\" COLSPAN=\"3\">pkg1.<A HREF=\"pkg1/C1.html\" " +            "title=\"class in pkg1\">C1</A></TH>"
   26.56 -        },
   26.57 -        {BUG_ID + FS + "constant-values.html",
   26.58 -            "<TH ALIGN=\"left\" COLSPAN=\"3\">pkg1.<A HREF=\"pkg1/C1.html\" " +            "title=\"class in pkg1\">C1</A></TH>"
   26.59 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
   26.60 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
   26.61 +            " SCOPE=\"col\" NOWRAP>Constant Field</TH>" + NL +
   26.62 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>Value</TH>"
   26.63          },
   26.64  
   26.65          // Serialized Form
    27.1 --- a/test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java	Thu Mar 26 16:48:53 2009 -0700
    27.2 +++ b/test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java	Wed Apr 01 08:58:42 2009 -0700
    27.3 @@ -25,7 +25,7 @@
    27.4  
    27.5  /*
    27.6   * @test
    27.7 - * @bug 6786690
    27.8 + * @bug 6786690 6820360
    27.9   * @summary This test verifies the nesting of definition list tags.
   27.10   * @author Bhavesh Patel
   27.11   * @library ../lib/
   27.12 @@ -36,7 +36,7 @@
   27.13  
   27.14  public class TestHtmlDefinitionListTag extends JavadocTester {
   27.15  
   27.16 -    private static final String BUG_ID = "6786690";
   27.17 +    private static final String BUG_ID = "6786690-6820360";
   27.18  
   27.19      // Test common to all runs of javadoc. The class signature should print
   27.20      // properly enclosed definition list tags and the Annotation Type
   27.21 @@ -55,6 +55,9 @@
   27.22      // serialized form should have properly nested definition list tags
   27.23      // enclosing comments, tags and deprecated information.
   27.24      private static final String[][] TEST_CMNT_DEPR = {
   27.25 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "<DL>" + NL +
   27.26 +                 "<DT><STRONG>Since:</STRONG></DT>" + NL +
   27.27 +                 "  <DD>JDK1.0</DD></DL>"},
   27.28          {BUG_ID + FS + "pkg1" + FS + "C1.html", "<DL>" + NL +
   27.29                   "<DT><STRONG>Since:</STRONG></DT>" + NL +
   27.30                   "  <DD>JDK1.0</DD>" + NL + "<DT><STRONG>See Also:</STRONG></DT><DD>" +
   27.31 @@ -193,6 +196,9 @@
   27.32      // should display properly nested definition list tags for comments, tags
   27.33      // and deprecated information.
   27.34      private static final String[][] TEST_NODEPR = {
   27.35 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "<DL>" + NL +
   27.36 +                 "<DT><STRONG>Since:</STRONG></DT>" + NL +
   27.37 +                 "  <DD>JDK1.0</DD></DL>"},
   27.38          {BUG_ID + FS + "pkg1" + FS + "C1.html", "<DL>" + NL +
   27.39                   "<DT><STRONG>Since:</STRONG></DT>" + NL +
   27.40                   "  <DD>JDK1.0</DD>" + NL + "<DT><STRONG>See Also:</STRONG></DT><DD>" +
   27.41 @@ -302,6 +308,8 @@
   27.42      // Test for valid HTML generation which should not comprise of empty
   27.43      // definition list tags.
   27.44      private static final String[][] NEGATED_TEST = {
   27.45 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "<DL></DL>"},
   27.46 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "<DL>" + NL + "</DL>"},
   27.47          {BUG_ID + FS + "pkg1" + FS + "C1.html", "<DL></DL>"},
   27.48          {BUG_ID + FS + "pkg1" + FS + "C1.html", "<DL>" + NL + "</DL>"},
   27.49          {BUG_ID + FS + "pkg1" + FS + "C1.ModalExclusionType.html", "<DL></DL>"},
    28.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    28.2 +++ b/test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/package-info.java	Wed Apr 01 08:58:42 2009 -0700
    28.3 @@ -0,0 +1,29 @@
    28.4 +/*
    28.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    28.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    28.7 + *
    28.8 + * This code is free software; you can redistribute it and/or modify it
    28.9 + * under the terms of the GNU General Public License version 2 only, as
   28.10 + * published by the Free Software Foundation.
   28.11 + *
   28.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   28.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   28.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   28.15 + * version 2 for more details (a copy is included in the LICENSE file that
   28.16 + * accompanied this code).
   28.17 + *
   28.18 + * You should have received a copy of the GNU General Public License version
   28.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   28.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   28.21 + *
   28.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   28.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   28.24 + * have any questions.
   28.25 + */
   28.26 +
   28.27 +/**
   28.28 + * Test package 1.
   28.29 + *
   28.30 + * @since JDK1.0
   28.31 + */
   28.32 +package pkg1;
    29.1 --- a/test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java	Thu Mar 26 16:48:53 2009 -0700
    29.2 +++ b/test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java	Wed Apr 01 08:58:42 2009 -0700
    29.3 @@ -38,14 +38,15 @@
    29.4  
    29.5      private static final String BUG_ID = "6786028";
    29.6      private static final String[][] TEST1 = {
    29.7 +        {BUG_ID + FS + "pkg1" + FS + "C1.html", "<STRONG>See Also:</STRONG>"}};
    29.8 +    private static final String[][] NEGATED_TEST1 = {
    29.9          {BUG_ID + FS + "pkg1" + FS + "C1.html", "<STRONG>Method Summary</STRONG>"},
   29.10 -        {BUG_ID + FS + "pkg1" + FS + "C1.html", "<STRONG>See Also:</STRONG>"},
   29.11 +        {BUG_ID + FS + "pkg1" + FS + "C1.html", "<B>"},
   29.12          {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "<STRONG>Class Summary</STRONG>"}};
   29.13 -    private static final String[][] NEGATED_TEST1 = {
   29.14 -        {BUG_ID + FS + "pkg1" + FS + "C1.html", "<B>"}};
   29.15      private static final String[][] TEST2 = {
   29.16 +        {BUG_ID + FS + "pkg2" + FS + "C2.html", "<B>Comments:</B>"}};
   29.17 +    private static final String[][] NEGATED_TEST2 = {
   29.18          {BUG_ID + FS + "pkg2" + FS + "C2.html", "<STRONG>Method Summary</STRONG>"},
   29.19 -        {BUG_ID + FS + "pkg2" + FS + "C2.html", "<B>Comments:</B>"},
   29.20          {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "<STRONG>Class Summary</STRONG>"}};
   29.21  
   29.22      private static final String[] ARGS1 =
   29.23 @@ -62,7 +63,7 @@
   29.24      public static void main(String[] args) {
   29.25          TestHtmlStrongTag tester = new TestHtmlStrongTag();
   29.26          run(tester, ARGS1, TEST1, NEGATED_TEST1);
   29.27 -        run(tester, ARGS2, TEST2, NO_TEST);
   29.28 +        run(tester, ARGS2, TEST2, NEGATED_TEST2);
   29.29          tester.printSummary();
   29.30      }
   29.31  
    30.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    30.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java	Wed Apr 01 08:58:42 2009 -0700
    30.3 @@ -0,0 +1,478 @@
    30.4 +/*
    30.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    30.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    30.7 + *
    30.8 + * This code is free software; you can redistribute it and/or modify it
    30.9 + * under the terms of the GNU General Public License version 2 only, as
   30.10 + * published by the Free Software Foundation.
   30.11 + *
   30.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   30.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   30.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   30.15 + * version 2 for more details (a copy is included in the LICENSE file that
   30.16 + * accompanied this code).
   30.17 + *
   30.18 + * You should have received a copy of the GNU General Public License version
   30.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   30.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   30.21 + *
   30.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   30.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   30.24 + * have any questions.
   30.25 + */
   30.26 +
   30.27 +/*
   30.28 + * @test
   30.29 + * @bug      6786688
   30.30 + * @summary  HTML tables should have table summary, caption and table headers.
   30.31 + * @author   Bhavesh Patel
   30.32 + * @library  ../lib/
   30.33 + * @build    JavadocTester
   30.34 + * @build    TestHtmlTableTags
   30.35 + * @run main TestHtmlTableTags
   30.36 + */
   30.37 +
   30.38 +public class TestHtmlTableTags extends JavadocTester {
   30.39 +
   30.40 +    //Test information.
   30.41 +    private static final String BUG_ID = "6786688";
   30.42 +
   30.43 +    //Javadoc arguments.
   30.44 +    private static final String[] ARGS = new String[] {
   30.45 +        "-d", BUG_ID, "-sourcepath", SRC_DIR, "-use", "pkg1", "pkg2"
   30.46 +    };
   30.47 +
   30.48 +    //Input for string tests for HTML table tags.
   30.49 +    private static final String[][] TABLE_TAGS_TEST = {
   30.50 +        /*
   30.51 +         * Test for validating summary for HTML tables
   30.52 +         */
   30.53 +
   30.54 +        //Package summary
   30.55 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
   30.56 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.57 +            "CELLSPACING=\"0\" SUMMARY=\"Class Summary table, " +
   30.58 +            "listing classes, and an explanation\">"
   30.59 +        },
   30.60 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
   30.61 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.62 +            "CELLSPACING=\"0\" SUMMARY=\"Interface Summary table, " +
   30.63 +            "listing interfaces, and an explanation\">"
   30.64 +        },
   30.65 +        {BUG_ID + FS + "pkg2" + FS + "package-summary.html",
   30.66 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.67 +            "CELLSPACING=\"0\" SUMMARY=\"Enum Summary table, " +
   30.68 +            "listing enums, and an explanation\">"
   30.69 +        },
   30.70 +        {BUG_ID + FS + "pkg2" + FS + "package-summary.html",
   30.71 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.72 +            "CELLSPACING=\"0\" SUMMARY=\"Annotation Types Summary table, " +
   30.73 +            "listing annotation types, and an explanation\">"
   30.74 +        },
   30.75 +        // Class documentation
   30.76 +        {BUG_ID + FS + "pkg1" + FS + "C1.html",
   30.77 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.78 +            "CELLSPACING=\"0\" SUMMARY=\"Field Summary table, " +
   30.79 +            "listing fields, and an explanation\">"
   30.80 +        },
   30.81 +        {BUG_ID + FS + "pkg1" + FS + "C1.html",
   30.82 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.83 +            "CELLSPACING=\"0\" SUMMARY=\"Method Summary table, " +
   30.84 +            "listing methods, and an explanation\">"
   30.85 +        },
   30.86 +        {BUG_ID + FS + "pkg2" + FS + "C2.html",
   30.87 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.88 +            "CELLSPACING=\"0\" SUMMARY=\"Nested Class Summary table, " +
   30.89 +            "listing nested classes, and an explanation\">"
   30.90 +        },
   30.91 +        {BUG_ID + FS + "pkg2" + FS + "C2.html",
   30.92 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.93 +            "CELLSPACING=\"0\" SUMMARY=\"Constructor Summary table, " +
   30.94 +            "listing constructors, and an explanation\">"
   30.95 +        },
   30.96 +        {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html",
   30.97 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
   30.98 +            "CELLSPACING=\"0\" SUMMARY=\"Enum Constant Summary table, " +
   30.99 +            "listing enum constants, and an explanation\">"
  30.100 +        },
  30.101 +        {BUG_ID + FS + "pkg2" + FS + "C3.html",
  30.102 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.103 +            "CELLSPACING=\"0\" SUMMARY=\"Required Element Summary table, " +
  30.104 +            "listing required elements, and an explanation\">"
  30.105 +        },
  30.106 +        {BUG_ID + FS + "pkg2" + FS + "C4.html",
  30.107 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.108 +            "CELLSPACING=\"0\" SUMMARY=\"Optional Element Summary table, " +
  30.109 +            "listing optional elements, and an explanation\">"
  30.110 +        },
  30.111 +        // Class use documentation
  30.112 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html",
  30.113 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.114 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.115 +            "listing packages, and an explanation\">"
  30.116 +        },
  30.117 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
  30.118 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.119 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.120 +            "listing fields, and an explanation\">"
  30.121 +        },
  30.122 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
  30.123 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.124 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.125 +            "listing methods, and an explanation\">"
  30.126 +        },
  30.127 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html",
  30.128 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.129 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.130 +            "listing fields, and an explanation\">"
  30.131 +        },
  30.132 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html",
  30.133 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.134 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.135 +            "listing methods, and an explanation\">"
  30.136 +        },
  30.137 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html",
  30.138 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.139 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.140 +            "listing packages, and an explanation\">"
  30.141 +        },
  30.142 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html",
  30.143 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.144 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.145 +            "listing methods, and an explanation\">"
  30.146 +        },
  30.147 +        // Package use documentation
  30.148 +        {BUG_ID + FS + "pkg1" + FS + "package-use.html",
  30.149 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.150 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.151 +            "listing packages, and an explanation\">"
  30.152 +        },
  30.153 +        {BUG_ID + FS + "pkg1" + FS + "package-use.html",
  30.154 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.155 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.156 +            "listing classes, and an explanation\">"
  30.157 +        },
  30.158 +        {BUG_ID + FS + "pkg2" + FS + "package-use.html",
  30.159 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.160 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.161 +            "listing packages, and an explanation\">"
  30.162 +        },
  30.163 +        {BUG_ID + FS + "pkg2" + FS + "package-use.html",
  30.164 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.165 +            "CELLSPACING=\"0\" SUMMARY=\"Use table, " +
  30.166 +            "listing classes, and an explanation\">"
  30.167 +        },
  30.168 +        // Deprecated
  30.169 +        {BUG_ID + FS + "deprecated-list.html",
  30.170 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.171 +            "CELLSPACING=\"0\" SUMMARY=\"Deprecated Fields table, " +
  30.172 +            "listing deprecated fields, and an explanation\">"
  30.173 +        },
  30.174 +        {BUG_ID + FS + "deprecated-list.html",
  30.175 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.176 +            "CELLSPACING=\"0\" SUMMARY=\"Deprecated Methods table, " +
  30.177 +            "listing deprecated methods, and an explanation\">"
  30.178 +        },
  30.179 +        // Constant values
  30.180 +        {BUG_ID + FS + "constant-values.html",
  30.181 +            "<TABLE BORDER=\"1\" CELLPADDING=\"3\" CELLSPACING=\"0\" " +
  30.182 +            "SUMMARY=\"Constant Field Values table, listing " +
  30.183 +            "constant fields, and values\">"
  30.184 +        },
  30.185 +        // Overview Summary
  30.186 +        {BUG_ID + FS + "overview-summary.html",
  30.187 +            "<TABLE BORDER=\"1\" WIDTH=\"100%\" CELLPADDING=\"3\" " +
  30.188 +            "CELLSPACING=\"0\" SUMMARY=\"Packages table, " +
  30.189 +            "listing packages, and an explanation\">"
  30.190 +        },
  30.191 +
  30.192 +        /*
  30.193 +         * Test for validating caption for HTML tables
  30.194 +         */
  30.195 +
  30.196 +        //Package summary
  30.197 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
  30.198 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.199 +            "Class Summary</CAPTION>"
  30.200 +        },
  30.201 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
  30.202 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.203 +            "Interface Summary</CAPTION>"
  30.204 +        },
  30.205 +        {BUG_ID + FS + "pkg2" + FS + "package-summary.html",
  30.206 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.207 +            "Enum Summary</CAPTION>"
  30.208 +        },
  30.209 +        {BUG_ID + FS + "pkg2" + FS + "package-summary.html",
  30.210 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.211 +            "Annotation Types Summary</CAPTION>"
  30.212 +        },
  30.213 +        // Class documentation
  30.214 +        {BUG_ID + FS + "pkg1" + FS + "C1.html",
  30.215 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.216 +            "Field Summary</CAPTION>"
  30.217 +        },
  30.218 +        {BUG_ID + FS + "pkg1" + FS + "C1.html",
  30.219 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.220 +            "Method Summary</CAPTION>"
  30.221 +        },
  30.222 +        {BUG_ID + FS + "pkg2" + FS + "C2.html",
  30.223 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.224 +            "Nested Class Summary</CAPTION>"
  30.225 +        },
  30.226 +        {BUG_ID + FS + "pkg2" + FS + "C2.html",
  30.227 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.228 +            "Constructor Summary</CAPTION>"
  30.229 +        },
  30.230 +        {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html",
  30.231 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.232 +            "Enum Constant Summary</CAPTION>"
  30.233 +        },
  30.234 +        {BUG_ID + FS + "pkg2" + FS + "C3.html",
  30.235 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.236 +            "Required Element Summary</CAPTION>"
  30.237 +        },
  30.238 +        {BUG_ID + FS + "pkg2" + FS + "C4.html",
  30.239 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.240 +            "Optional Element Summary</CAPTION>"
  30.241 +        },
  30.242 +        // Class use documentation
  30.243 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html",
  30.244 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.245 +            "Packages that use <A HREF=\"../../pkg1/I1.html\" " +
  30.246 +            "title=\"interface in pkg1\">I1</A></CAPTION>"
  30.247 +        },
  30.248 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
  30.249 +            "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  30.250 +            "Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> " +
  30.251 +            "declared as <A HREF=\"../../pkg1/C1.html\" title=\"class in pkg1\">" +
  30.252 +            "C1</A></CAPTION>"
  30.253 +        },
  30.254 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
  30.255 +            "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  30.256 +            "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> " +
  30.257 +            "with parameters of type <A HREF=\"../../pkg1/C1.html\" " +
  30.258 +            "title=\"class in pkg1\">C1</A></CAPTION>"
  30.259 +        },
  30.260 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html",
  30.261 +            "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  30.262 +            "Fields in <A HREF=\"../../pkg1/package-summary.html\">pkg1</A> " +
  30.263 +            "declared as <A HREF=\"../../pkg2/C2.html\" title=\"class in pkg2\">" +
  30.264 +            "C2</A></CAPTION>"
  30.265 +        },
  30.266 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html",
  30.267 +            "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  30.268 +            "Methods in <A HREF=\"../../pkg1/package-summary.html\">pkg1</A> " +
  30.269 +            "with parameters of type <A HREF=\"../../pkg2/C2.html\" " +
  30.270 +            "title=\"class in pkg2\">C2</A></CAPTION>"
  30.271 +        },
  30.272 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html",
  30.273 +            "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  30.274 +            "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> " +
  30.275 +            "that return <A HREF=\"../../pkg2/C2.ModalExclusionType.html\" " +
  30.276 +            "title=\"enum in pkg2\">C2.ModalExclusionType</A></CAPTION>"
  30.277 +        },
  30.278 +        // Package use documentation
  30.279 +        {BUG_ID + FS + "pkg1" + FS + "package-use.html",
  30.280 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.281 +            "Packages that use <A HREF=\"../pkg1/package-summary.html\">" +
  30.282 +            "pkg1</A></CAPTION>"
  30.283 +        },
  30.284 +        {BUG_ID + FS + "pkg1" + FS + "package-use.html",
  30.285 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.286 +            "Classes in <A HREF=\"../pkg1/package-summary.html\">pkg1</A> " +
  30.287 +            "used by <A HREF=\"../pkg1/package-summary.html\">pkg1</A></CAPTION>"
  30.288 +        },
  30.289 +        {BUG_ID + FS + "pkg2" + FS + "package-use.html",
  30.290 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.291 +            "Packages that use <A HREF=\"../pkg2/package-summary.html\">" +
  30.292 +            "pkg2</A></CAPTION>"
  30.293 +        },
  30.294 +        {BUG_ID + FS + "pkg2" + FS + "package-use.html",
  30.295 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.296 +            "Classes in <A HREF=\"../pkg2/package-summary.html\">pkg2</A> " +
  30.297 +            "used by <A HREF=\"../pkg1/package-summary.html\">pkg1</A></CAPTION>"
  30.298 +        },
  30.299 +        // Deprecated
  30.300 +        {BUG_ID + FS + "deprecated-list.html",
  30.301 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.302 +            "Deprecated Fields</CAPTION>"
  30.303 +        },
  30.304 +        {BUG_ID + FS + "deprecated-list.html",
  30.305 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.306 +            "Deprecated Methods</CAPTION>"
  30.307 +        },
  30.308 +        // Constant values
  30.309 +        {BUG_ID + FS + "constant-values.html",
  30.310 +            "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  30.311 +            "pkg1.<A HREF=\"pkg1/C1.html\" title=\"class in pkg1\">C1</A></CAPTION>"
  30.312 +        },
  30.313 +        // Overview Summary
  30.314 +        {BUG_ID + FS + "overview-summary.html",
  30.315 +            "<CAPTION CLASS=\"TableCaption\">" + NL +
  30.316 +            "Packages</CAPTION>"
  30.317 +        },
  30.318 +
  30.319 +        /*
  30.320 +         * Test for validating headers for HTML tables
  30.321 +         */
  30.322 +
  30.323 +        //Package summary
  30.324 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
  30.325 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.326 +            "Class</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.327 +            " NOWRAP>Description</TH>"
  30.328 +        },
  30.329 +        {BUG_ID + FS + "pkg1" + FS + "package-summary.html",
  30.330 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.331 +            "Interface</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.332 +            " NOWRAP>Description</TH>"
  30.333 +        },
  30.334 +        {BUG_ID + FS + "pkg2" + FS + "package-summary.html",
  30.335 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.336 +            "Enum</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.337 +            " NOWRAP>Description</TH>"
  30.338 +        },
  30.339 +        {BUG_ID + FS + "pkg2" + FS + "package-summary.html",
  30.340 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.341 +            "Annotation Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.342 +            " SCOPE=\"col\" NOWRAP>Description</TH>"
  30.343 +        },
  30.344 +        // Class documentation
  30.345 +        {BUG_ID + FS + "pkg1" + FS + "C1.html",
  30.346 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.347 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.348 +            " SCOPE=\"col\" NOWRAP>Field and Description</TH>"
  30.349 +        },
  30.350 +        {BUG_ID + FS + "pkg1" + FS + "C1.html",
  30.351 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.352 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.353 +            " SCOPE=\"col\" NOWRAP>Method and Description</TH>"
  30.354 +        },
  30.355 +        {BUG_ID + FS + "pkg2" + FS + "C2.html",
  30.356 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.357 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.358 +            " SCOPE=\"col\" NOWRAP>Class and Description</TH>"
  30.359 +        },
  30.360 +        {BUG_ID + FS + "pkg2" + FS + "C2.html",
  30.361 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.362 +            "Constructor and Description</TH>"
  30.363 +        },
  30.364 +        {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html",
  30.365 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.366 +            "Enum Constant and Description</TH>"
  30.367 +        },
  30.368 +        {BUG_ID + FS + "pkg2" + FS + "C3.html",
  30.369 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.370 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.371 +            " SCOPE=\"col\" NOWRAP>Required Element and Description</TH>"
  30.372 +        },
  30.373 +        {BUG_ID + FS + "pkg2" + FS + "C4.html",
  30.374 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.375 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.376 +            " SCOPE=\"col\" NOWRAP>Optional Element and Description</TH>"
  30.377 +        },
  30.378 +        // Class use documentation
  30.379 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html",
  30.380 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.381 +            "Package</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.382 +            " NOWRAP>Description</TH>"
  30.383 +        },
  30.384 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
  30.385 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.386 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.387 +            " SCOPE=\"col\" NOWRAP>Field and Description</TH>"
  30.388 +        },
  30.389 +        {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html",
  30.390 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.391 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.392 +            " SCOPE=\"col\" NOWRAP>Method and Description</TH>"
  30.393 +        },
  30.394 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html",
  30.395 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.396 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.397 +            " SCOPE=\"col\" NOWRAP>Field and Description</TH>"
  30.398 +        },
  30.399 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html",
  30.400 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.401 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.402 +            " SCOPE=\"col\" NOWRAP>Method and Description</TH>"
  30.403 +        },
  30.404 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html",
  30.405 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.406 +            "Package</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.407 +            " NOWRAP>Description</TH>"
  30.408 +        },
  30.409 +        {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html",
  30.410 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.411 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.412 +            " SCOPE=\"col\" NOWRAP>Method and Description</TH>"
  30.413 +        },
  30.414 +        // Package use documentation
  30.415 +        {BUG_ID + FS + "pkg1" + FS + "package-use.html",
  30.416 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.417 +            "Package</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.418 +            " NOWRAP>Description</TH>"
  30.419 +        },
  30.420 +        {BUG_ID + FS + "pkg1" + FS + "package-use.html",
  30.421 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.422 +            "Class and Description</TH>"
  30.423 +        },
  30.424 +        {BUG_ID + FS + "pkg2" + FS + "package-use.html",
  30.425 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.426 +            "Package</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.427 +            " NOWRAP>Description</TH>"
  30.428 +        },
  30.429 +        {BUG_ID + FS + "pkg2" + FS + "package-use.html",
  30.430 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.431 +            "Class and Description</TH>"
  30.432 +        },
  30.433 +        // Deprecated
  30.434 +        {BUG_ID + FS + "deprecated-list.html",
  30.435 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.436 +            "Field and Description</TH>"
  30.437 +        },
  30.438 +        {BUG_ID + FS + "deprecated-list.html",
  30.439 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.440 +            "Method and Description</TH>"
  30.441 +        },
  30.442 +        // Constant values
  30.443 +        {BUG_ID + FS + "constant-values.html",
  30.444 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.445 +            "Modifier and Type</TH>" + NL + "<TH CLASS=\"TableHeader\"" +
  30.446 +            " SCOPE=\"col\" NOWRAP>Constant Field</TH>" + NL +
  30.447 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>Value</TH>"
  30.448 +        },
  30.449 +        // Overview Summary
  30.450 +        {BUG_ID + FS + "overview-summary.html",
  30.451 +            "<TH CLASS=\"TableHeader\" SCOPE=\"col\" NOWRAP>" +
  30.452 +            "Package</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  30.453 +            " NOWRAP>Description</TH>"
  30.454 +        }
  30.455 +    };
  30.456 +    private static final String[][] NEGATED_TEST = NO_TEST;
  30.457 +
  30.458 +    /**
  30.459 +     * The entry point of the test.
  30.460 +     * @param args the array of command line arguments.
  30.461 +     */
  30.462 +    public static void main(String[] args) {
  30.463 +        TestHtmlTableTags tester = new TestHtmlTableTags();
  30.464 +        run(tester, ARGS, TABLE_TAGS_TEST, NEGATED_TEST);
  30.465 +        tester.printSummary();
  30.466 +    }
  30.467 +
  30.468 +    /**
  30.469 +     * {@inheritDoc}
  30.470 +     */
  30.471 +    public String getBugId() {
  30.472 +        return BUG_ID;
  30.473 +    }
  30.474 +
  30.475 +    /**
  30.476 +     * {@inheritDoc}
  30.477 +     */
  30.478 +    public String getBugName() {
  30.479 +        return getClass().getName();
  30.480 +    }
  30.481 +}
    31.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    31.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg1/C1.java	Wed Apr 01 08:58:42 2009 -0700
    31.3 @@ -0,0 +1,81 @@
    31.4 +/*
    31.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    31.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    31.7 + *
    31.8 + * This code is free software; you can redistribute it and/or modify it
    31.9 + * under the terms of the GNU General Public License version 2 only, as
   31.10 + * published by the Free Software Foundation.
   31.11 + *
   31.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   31.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   31.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   31.15 + * version 2 for more details (a copy is included in the LICENSE file that
   31.16 + * accompanied this code).
   31.17 + *
   31.18 + * You should have received a copy of the GNU General Public License version
   31.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   31.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   31.21 + *
   31.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   31.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   31.24 + * have any questions.
   31.25 + */
   31.26 +
   31.27 +package pkg1;
   31.28 +
   31.29 +import pkg2.*;
   31.30 +
   31.31 +/**
   31.32 + * A test class.
   31.33 + *
   31.34 + * @author Bhavesh Patel
   31.35 + */
   31.36 +public class C1 implements I1 {
   31.37 +
   31.38 +    /**
   31.39 +     * Test field for class.
   31.40 +     */
   31.41 +    public C2 field;
   31.42 +
   31.43 +    /**
   31.44 +     * Constant value.
   31.45 +     */
   31.46 +    public static final String CONSTANT1 = "C1";
   31.47 +
   31.48 +    /**
   31.49 +     * A test constructor.
   31.50 +     */
   31.51 +    C1() {
   31.52 +    }
   31.53 +
   31.54 +    /**
   31.55 +     * Method thats does some processing.
   31.56 +     *
   31.57 +     * @param param some parameter that is passed.
   31.58 +     * @return a sample object.
   31.59 +     */
   31.60 +    public C2 method(C2 param) {
   31.61 +        return param;
   31.62 +    }
   31.63 +
   31.64 +    /**
   31.65 +     * Method that is implemented.
   31.66 +     *
   31.67 +     * @param a some random value.
   31.68 +     * @param b some random value.
   31.69 +     */
   31.70 +    public void method1(int a, int b) {
   31.71 +    }
   31.72 +
   31.73 +    /**
   31.74 +     * Another inherited method.
   31.75 +     * @param c some value.
   31.76 +     */
   31.77 +    public void method2(int c) {
   31.78 +    }
   31.79 +
   31.80 +    /**
   31.81 +     * @deprecated don't use this anymore.
   31.82 +     */
   31.83 +    public void deprecatedMethod() {}
   31.84 +}
    32.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg1/I1.java	Wed Apr 01 08:58:42 2009 -0700
    32.3 @@ -0,0 +1,48 @@
    32.4 +/*
    32.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    32.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    32.7 + *
    32.8 + * This code is free software; you can redistribute it and/or modify it
    32.9 + * under the terms of the GNU General Public License version 2 only, as
   32.10 + * published by the Free Software Foundation.
   32.11 + *
   32.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   32.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   32.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   32.15 + * version 2 for more details (a copy is included in the LICENSE file that
   32.16 + * accompanied this code).
   32.17 + *
   32.18 + * You should have received a copy of the GNU General Public License version
   32.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   32.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   32.21 + *
   32.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   32.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   32.24 + * have any questions.
   32.25 + */
   32.26 +
   32.27 +package pkg1;
   32.28 +
   32.29 +/**
   32.30 + * A sample interface used to test table tags.
   32.31 + *
   32.32 + * @author Bhavesh Patel
   32.33 + */
   32.34 +public interface I1 {
   32.35 +
   32.36 +    /**
   32.37 +     * A test method.
   32.38 +     *
   32.39 +     * @param a blah.
   32.40 +     * @param b blah.
   32.41 +     */
   32.42 +    void method1(int a, int b);
   32.43 +
   32.44 +    /**
   32.45 +     * Another test method.
   32.46 +     *
   32.47 +     * @param c blah.
   32.48 +     */
   32.49 +    void method2(int c);
   32.50 +
   32.51 +}
    33.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    33.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg1/package-info.java	Wed Apr 01 08:58:42 2009 -0700
    33.3 @@ -0,0 +1,27 @@
    33.4 +/*
    33.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    33.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    33.7 + *
    33.8 + * This code is free software; you can redistribute it and/or modify it
    33.9 + * under the terms of the GNU General Public License version 2 only, as
   33.10 + * published by the Free Software Foundation.
   33.11 + *
   33.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   33.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   33.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   33.15 + * version 2 for more details (a copy is included in the LICENSE file that
   33.16 + * accompanied this code).
   33.17 + *
   33.18 + * You should have received a copy of the GNU General Public License version
   33.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   33.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   33.21 + *
   33.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   33.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   33.24 + * have any questions.
   33.25 + */
   33.26 +
   33.27 +/**
   33.28 + * Test package 1 used to test table tags.
   33.29 + */
   33.30 +package pkg1;
    34.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    34.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg2/C2.java	Wed Apr 01 08:58:42 2009 -0700
    34.3 @@ -0,0 +1,73 @@
    34.4 +/*
    34.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    34.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    34.7 + *
    34.8 + * This code is free software; you can redistribute it and/or modify it
    34.9 + * under the terms of the GNU General Public License version 2 only, as
   34.10 + * published by the Free Software Foundation.
   34.11 + *
   34.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   34.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   34.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   34.15 + * version 2 for more details (a copy is included in the LICENSE file that
   34.16 + * accompanied this code).
   34.17 + *
   34.18 + * You should have received a copy of the GNU General Public License version
   34.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   34.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   34.21 + *
   34.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   34.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   34.24 + * have any questions.
   34.25 + */
   34.26 +
   34.27 +package pkg2;
   34.28 +
   34.29 +import pkg1.*;
   34.30 +
   34.31 +/**
   34.32 + * Another test class.
   34.33 + *
   34.34 + * @author Bhavesh Patel
   34.35 + */
   34.36 +public class C2 {
   34.37 +
   34.38 +    /**
   34.39 +     * A test field.
   34.40 +     */
   34.41 +    public C1 field;
   34.42 +
   34.43 +    /**
   34.44 +     * @deprecated don't use this field anymore.
   34.45 +     */
   34.46 +    public C1 dep_field;
   34.47 +
   34.48 +    /**
   34.49 +     * A sample enum.
   34.50 +     */
   34.51 +    public static enum ModalExclusionType {
   34.52 +        /**
   34.53 +         * Test comment.
   34.54 +         */
   34.55 +        NO_EXCLUDE,
   34.56 +        /**
   34.57 +         * Another comment.
   34.58 +         */
   34.59 +        APPLICATION_EXCLUDE
   34.60 +    };
   34.61 +
   34.62 +    /**
   34.63 +     * A string constant.
   34.64 +     */
   34.65 +    public static final String CONSTANT1 = "C2";
   34.66 +
   34.67 +    /**
   34.68 +     * A sample method.
   34.69 +     *
   34.70 +     * @param param some parameter.
   34.71 +     * @return a test object.
   34.72 +     */
   34.73 +    public C1 method(C1 param) {
   34.74 +        return param;
   34.75 +    }
   34.76 +}
    35.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    35.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg2/C3.java	Wed Apr 01 08:58:42 2009 -0700
    35.3 @@ -0,0 +1,40 @@
    35.4 +/*
    35.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    35.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    35.7 + *
    35.8 + * This code is free software; you can redistribute it and/or modify it
    35.9 + * under the terms of the GNU General Public License version 2 only, as
   35.10 + * published by the Free Software Foundation.  Sun designates this
   35.11 + * particular file as subject to the "Classpath" exception as provided
   35.12 + * by Sun in the LICENSE file that accompanied this code.
   35.13 + *
   35.14 + * This code is distributed in the hope that it will be useful, but WITHOUT
   35.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   35.16 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   35.17 + * version 2 for more details (a copy is included in the LICENSE file that
   35.18 + * accompanied this code).
   35.19 + *
   35.20 + * You should have received a copy of the GNU General Public License version
   35.21 + * 2 along with this work; if not, write to the Free Software Foundation,
   35.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   35.23 + *
   35.24 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   35.25 + * CA 95054 USA or visit www.sun.com if you need additional information or
   35.26 + * have any questions.
   35.27 + */
   35.28 +
   35.29 +package pkg2;
   35.30 +
   35.31 +import java.lang.annotation.*;
   35.32 +
   35.33 +/**
   35.34 + * Test Annotation class.
   35.35 + *
   35.36 + * @author Bhavesh Patel
   35.37 + */
   35.38 +public @interface C3 {
   35.39 +    /**
   35.40 +     * Comment.
   35.41 +     */
   35.42 +    String[] value();
   35.43 +}
    36.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    36.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg2/C4.java	Wed Apr 01 08:58:42 2009 -0700
    36.3 @@ -0,0 +1,35 @@
    36.4 +/*
    36.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    36.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    36.7 + *
    36.8 + * This code is free software; you can redistribute it and/or modify it
    36.9 + * under the terms of the GNU General Public License version 2 only, as
   36.10 + * published by the Free Software Foundation.  Sun designates this
   36.11 + * particular file as subject to the "Classpath" exception as provided
   36.12 + * by Sun in the LICENSE file that accompanied this code.
   36.13 + *
   36.14 + * This code is distributed in the hope that it will be useful, but WITHOUT
   36.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   36.16 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   36.17 + * version 2 for more details (a copy is included in the LICENSE file that
   36.18 + * accompanied this code).
   36.19 + *
   36.20 + * You should have received a copy of the GNU General Public License version
   36.21 + * 2 along with this work; if not, write to the Free Software Foundation,
   36.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   36.23 + *
   36.24 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   36.25 + * CA 95054 USA or visit www.sun.com if you need additional information or
   36.26 + * have any questions.
   36.27 + */
   36.28 +
   36.29 +package pkg2;
   36.30 +
   36.31 +import java.lang.annotation.*;
   36.32 +
   36.33 +/*
   36.34 + * A sample interface.
   36.35 + */
   36.36 +public @interface C4 {
   36.37 +    boolean value() default true;
   36.38 +}
    37.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    37.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/pkg2/package-info.java	Wed Apr 01 08:58:42 2009 -0700
    37.3 @@ -0,0 +1,27 @@
    37.4 +/*
    37.5 + * Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
    37.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    37.7 + *
    37.8 + * This code is free software; you can redistribute it and/or modify it
    37.9 + * under the terms of the GNU General Public License version 2 only, as
   37.10 + * published by the Free Software Foundation.
   37.11 + *
   37.12 + * This code is distributed in the hope that it will be useful, but WITHOUT
   37.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   37.14 + * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   37.15 + * version 2 for more details (a copy is included in the LICENSE file that
   37.16 + * accompanied this code).
   37.17 + *
   37.18 + * You should have received a copy of the GNU General Public License version
   37.19 + * 2 along with this work; if not, write to the Free Software Foundation,
   37.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   37.21 + *
   37.22 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   37.23 + * CA 95054 USA or visit www.sun.com if you need additional information or
   37.24 + * have any questions.
   37.25 + */
   37.26 +
   37.27 +/**
   37.28 + * Test package 2 used to test table tags.
   37.29 + */
   37.30 +package pkg2;
    38.1 --- a/test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java	Thu Mar 26 16:48:53 2009 -0700
    38.2 +++ b/test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java	Wed Apr 01 08:58:42 2009 -0700
    38.3 @@ -58,7 +58,8 @@
    38.4                  "<A HREF=\"../pkg/Coin.html\" title=\"enum in pkg\">Coin</A>&gt;"
    38.5              },
    38.6              //Check for enum constant section
    38.7 -            {BUG_ID + FS + "pkg" + FS + "Coin.html", "<STRONG>Enum Constant Summary</STRONG>"},
    38.8 +            {BUG_ID + FS + "pkg" + FS + "Coin.html", "<CAPTION CLASS=\"TableCaption\">" + NL +
    38.9 +                     "Enum Constant Summary</CAPTION>"},
   38.10              //Detail for enum constant
   38.11              {BUG_ID + FS + "pkg" + FS + "Coin.html",
   38.12                  "<STRONG><A HREF=\"../pkg/Coin.html#Dime\">Dime</A></STRONG>"},
   38.13 @@ -158,9 +159,11 @@
   38.14                  "public @interface <STRONG>AnnotationType</STRONG>"},
   38.15              //Make sure member summary headings are correct.
   38.16              {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
   38.17 -                "<STRONG>Required Element Summary</STRONG>"},
   38.18 +                "<CAPTION CLASS=\"TableCaption\">" + NL +
   38.19 +                "Required Element Summary</CAPTION>"},
   38.20              {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
   38.21 -                "<STRONG>Optional Element Summary</STRONG>"},
   38.22 +                "<CAPTION CLASS=\"TableCaption\">" + NL +
   38.23 +                "Optional Element Summary</CAPTION>"},
   38.24              //Make sure element detail heading is correct
   38.25              {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
   38.26                  "Element Detail"},
   38.27 @@ -286,39 +289,57 @@
   38.28  
   38.29              //ClassUseTest1: <T extends Foo & Foo2>
   38.30              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
   38.31 -                 "<TH ALIGN=\"left\" COLSPAN=\"2\">Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</A></FONT></TH>"
   38.32 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.33 +                     "Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.34 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/Foo.html\" " +
   38.35 +                     "title=\"class in pkg2\">Foo</A></CAPTION>"
   38.36              },
   38.37              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
   38.38                  "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest1.html\" title=\"class in pkg2\">ClassUseTest1&lt;T extends Foo & Foo2&gt;</A></STRONG></CODE>"
   38.39              },
   38.40              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
   38.41 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</A></FONT></TH>"
   38.42 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.43 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.44 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/Foo.html\" " +
   38.45 +                     "title=\"class in pkg2\">Foo</A></CAPTION>"
   38.46              },
   38.47              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
   38.48                  "<TD><CODE><STRONG>ClassUseTest1.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest1.html#method(T)\">method</A></STRONG>(T&nbsp;t)</CODE>"
   38.49              },
   38.50              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
   38.51 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</A></FONT></TH>"
   38.52 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.53 +                     "Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.54 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/Foo.html\" " +
   38.55 +                     "title=\"class in pkg2\">Foo</A></CAPTION>"
   38.56              },
   38.57              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
   38.58                  "<A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A>&lt;<A HREF=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</A>&gt;</CODE></FONT></TD>"
   38.59              },
   38.60  
   38.61              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
   38.62 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> declared as <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A></FONT></TH>"
   38.63 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.64 +                     "Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.65 +                     "</A> declared as <A HREF=\"../../pkg2/ParamTest.html\" " +
   38.66 +                     "title=\"class in pkg2\">ParamTest</A></CAPTION>"
   38.67              },
   38.68              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
   38.69                  "<A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A>&lt;<A HREF=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</A>&gt;</CODE></FONT></TD>"
   38.70              },
   38.71  
   38.72             {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
   38.73 -            "<TH ALIGN=\"left\" COLSPAN=\"2\">Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo2.html\" title=\"interface in pkg2\">Foo2</A></FONT></TH>"
   38.74 +                    "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.75 +                    "Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.76 +                    "</A> with type parameters of type <A HREF=\"../../pkg2/Foo2.html\" " +
   38.77 +                    "title=\"interface in pkg2\">Foo2</A></CAPTION>"
   38.78             },
   38.79             {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
   38.80              "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest1.html\" title=\"class in pkg2\">ClassUseTest1&lt;T extends Foo & Foo2&gt;</A></STRONG></CODE>"
   38.81             },
   38.82             {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
   38.83 -               "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo2.html\" title=\"interface in pkg2\">Foo2</A></FONT></TH>"
   38.84 +                    "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.85 +                    "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.86 +                    "</A> with type parameters of type <A HREF=\"../../pkg2/Foo2.html\" " +
   38.87 +                    "title=\"interface in pkg2\">Foo2</A></CAPTION>"
   38.88              },
   38.89              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
   38.90                 "<TD><CODE><STRONG>ClassUseTest1.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest1.html#method(T)\">method</A></STRONG>(T&nbsp;t)</CODE>"
   38.91 @@ -326,44 +347,66 @@
   38.92  
   38.93              //ClassUseTest2: <T extends ParamTest<Foo3>>
   38.94              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
   38.95 -              "<TH ALIGN=\"left\" COLSPAN=\"2\">Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A></FONT></TH>"
   38.96 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
   38.97 +                     "Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
   38.98 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest.html\" " +
   38.99 +                     "title=\"class in pkg2\">ParamTest</A></CAPTION>"
  38.100              },
  38.101              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.102                "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest2.html\" title=\"class in pkg2\">ClassUseTest2&lt;T extends ParamTest&lt;<A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A>&gt;&gt;</A></STRONG></CODE>"
  38.103              },
  38.104              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.105 -              "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A></FONT></TH>"
  38.106 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.107 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.108 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest.html\" " +
  38.109 +                     "title=\"class in pkg2\">ParamTest</A></CAPTION>"
  38.110              },
  38.111              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.112                "<TD><CODE><STRONG>ClassUseTest2.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest2.html#method(T)\">method</A></STRONG>(T&nbsp;t)</CODE>"
  38.113              },
  38.114              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.115 -              "<TH ALIGN=\"left\" COLSPAN=\"2\">Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> declared as <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A></FONT></TH>"
  38.116 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.117 +                     "Fields in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.118 +                     "</A> declared as <A HREF=\"../../pkg2/ParamTest.html\" " +
  38.119 +                     "title=\"class in pkg2\">ParamTest</A></CAPTION>"
  38.120              },
  38.121              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.122                "<A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A>&lt;<A HREF=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</A>&gt;</CODE></FONT></TD>"
  38.123              },
  38.124              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.125 -              "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A></FONT></TH>"
  38.126 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.127 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.128 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest.html\" " +
  38.129 +                     "title=\"class in pkg2\">ParamTest</A></CAPTION>"
  38.130              },
  38.131              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
  38.132                "&lt;T extends <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A>&lt;<A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A>&gt;&gt;"
  38.133              },
  38.134  
  38.135              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
  38.136 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A></FONT></TH>"
  38.137 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.138 +                     "Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.139 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/Foo3.html\" " +
  38.140 +                     "title=\"class in pkg2\">Foo3</A></CAPTION>"
  38.141              },
  38.142              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
  38.143                  "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest2.html\" title=\"class in pkg2\">ClassUseTest2&lt;T extends ParamTest&lt;<A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A>&gt;&gt;</A></STRONG></CODE>"
  38.144              },
  38.145              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
  38.146 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A></FONT></TH>"
  38.147 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.148 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.149 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/Foo3.html\" " +
  38.150 +                     "title=\"class in pkg2\">Foo3</A></CAPTION>"
  38.151              },
  38.152              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
  38.153                  "<TD><CODE><STRONG>ClassUseTest2.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest2.html#method(T)\">method</A></STRONG>(T&nbsp;t)</CODE>"
  38.154              },
  38.155              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
  38.156 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> that return types with arguments of type <A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A></FONT></TH>"
  38.157 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.158 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.159 +                     "</A> that return types with arguments of type " +
  38.160 +                     "<A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">" +
  38.161 +                     "Foo3</A></CAPTION>"
  38.162              },
  38.163              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
  38.164                  "&lt;T extends <A HREF=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</A>&lt;<A HREF=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3</A>&gt;&gt;"
  38.165 @@ -371,38 +414,61 @@
  38.166  
  38.167              //ClassUseTest3: <T extends ParamTest2<List<? extends Foo4>>>
  38.168              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
  38.169 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">ParamTest2</A></FONT></TH>"
  38.170 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.171 +                     "Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.172 +                     "</A> with type parameters of type " +
  38.173 +                     "<A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
  38.174 +                     "ParamTest2</A></CAPTION>"
  38.175              },
  38.176              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
  38.177                  "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html\" title=\"class in pkg2\">ClassUseTest3&lt;T extends ParamTest2&lt;java.util.List&lt;? extends Foo4&gt;&gt;&gt;</A></STRONG></CODE>"
  38.178              },
  38.179              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
  38.180 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">ParamTest2</A></FONT></TH>"
  38.181 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.182 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.183 +                     "</A> with type parameters of type " +
  38.184 +                     "<A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
  38.185 +                     "ParamTest2</A></CAPTION>"
  38.186              },
  38.187              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
  38.188                  "<TD><CODE><STRONG>ClassUseTest3.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html#method(T)\">method</A></STRONG>(T&nbsp;t)</CODE>"
  38.189              },
  38.190              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
  38.191 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">ParamTest2</A></FONT></TH>"
  38.192 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.193 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.194 +                     "</A> with type parameters of type " +
  38.195 +                     "<A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
  38.196 +                     "ParamTest2</A></CAPTION>"
  38.197              },
  38.198              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
  38.199                  "&lt;T extends <A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">ParamTest2</A>&lt;java.util.List&lt;? extends <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A>&gt;&gt;&gt;"
  38.200              },
  38.201  
  38.202              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.203 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A></FONT></TH>"
  38.204 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.205 +                     "Classes in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.206 +                     "</A> with type parameters of type " +
  38.207 +                     "<A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">" +
  38.208 +                     "Foo4</A></CAPTION>"
  38.209              },
  38.210              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.211                  "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html\" title=\"class in pkg2\">ClassUseTest3&lt;T extends ParamTest2&lt;java.util.List&lt;? extends Foo4&gt;&gt;&gt;</A></STRONG></CODE>"
  38.212              },
  38.213              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.214 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type parameters of type <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A></FONT></TH>"
  38.215 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.216 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.217 +                     "</A> with type parameters of type <A HREF=\"../../pkg2/Foo4.html\" " +
  38.218 +                     "title=\"class in pkg2\">Foo4</A></CAPTION>"
  38.219              },
  38.220              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.221                  "<TD><CODE><STRONG>ClassUseTest3.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html#method(T)\">method</A></STRONG>(T&nbsp;t)</CODE>"
  38.222              },
  38.223              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.224 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> that return types with arguments of type <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A></FONT></TH>"
  38.225 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.226 +                     "Methods in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.227 +                     "</A> that return types with arguments of type " +
  38.228 +                     "<A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">" +
  38.229 +                     "Foo4</A></CAPTION>"
  38.230              },
  38.231              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.232                  "&lt;T extends <A HREF=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">ParamTest2</A>&lt;java.util.List&lt;? extends <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A>&gt;&gt;&gt;"
  38.233 @@ -410,81 +476,147 @@
  38.234  
  38.235              //Type parameters in constructor and method args
  38.236              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.237 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Method parameters in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type arguments of type <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A></FONT></TH>" + NL +
  38.238 -                "</TR>" + NL +
  38.239 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.240 -                "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.241 -                "<CODE>&nbsp;void</CODE></FONT></TD>" + NL +
  38.242 -                "<TD><CODE><STRONG>ClassUseTest3.</STRONG><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html#method(java.util.Set)\">method</A></STRONG>(java.util.Set&lt;<A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A>&gt;&nbsp;p)</CODE>"
  38.243 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.244 +                     "Method parameters in <A HREF=\"../../pkg2/package-summary.html\">pkg2" +
  38.245 +                     "</A> with type arguments of type <A HREF=\"../../pkg2/Foo4.html\" " +
  38.246 +                     "title=\"class in pkg2\">Foo4</A></CAPTION>" + NL +
  38.247 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.248 +                     " NOWRAP>Modifier and Type" +
  38.249 +                     "</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.250 +                     " NOWRAP>Method and Description</TH>" + NL +
  38.251 +                     "</TR>" + NL +
  38.252 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.253 +                     "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.254 +                     "<CODE>&nbsp;void</CODE></FONT></TD>" + NL +
  38.255 +                     "<TD><CODE><STRONG>ClassUseTest3.</STRONG><STRONG>" +
  38.256 +                     "<A HREF=\"../../pkg2/ClassUseTest3.html#method(java.util.Set)\">" +
  38.257 +                     "method</A></STRONG>(java.util.Set&lt;<A HREF=\"../../pkg2/Foo4.html\" " +
  38.258 +                     "title=\"class in pkg2\">Foo4</A>&gt;&nbsp;p)</CODE>"
  38.259              },
  38.260              {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
  38.261 -                "<TH ALIGN=\"left\" COLSPAN=\"2\">Constructor parameters in <A HREF=\"../../pkg2/package-summary.html\">pkg2</A> with type arguments of type <A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A></FONT></TH>" + NL +
  38.262 -                "</TR>" + NL +
  38.263 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.264 -                "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html#ClassUseTest3(java.util.Set)\">ClassUseTest3</A></STRONG>(java.util.Set&lt;<A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</A>&gt;&nbsp;p)</CODE>"
  38.265 +                     "<CAPTION CLASS=\"TableSubCaption\">" + NL +
  38.266 +                     "Constructor parameters in <A HREF=\"../../pkg2/package-summary.html\">" +
  38.267 +                     "pkg2</A> with type arguments of type <A HREF=\"../../pkg2/Foo4.html\" " +
  38.268 +                     "title=\"class in pkg2\">Foo4</A></CAPTION>" + NL +
  38.269 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.270 +                     " NOWRAP>Constructor and Description" +
  38.271 +                     "</TH>" + NL + "</TR>" + NL +
  38.272 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.273 +                     "<TD><CODE><STRONG><A HREF=\"../../pkg2/ClassUseTest3.html#ClassUseTest3" +
  38.274 +                     "(java.util.Set)\">ClassUseTest3</A></STRONG>(java.util.Set&lt;" +
  38.275 +                     "<A HREF=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">" +
  38.276 +                     "Foo4</A>&gt;&nbsp;p)</CODE>"
  38.277              },
  38.278  
  38.279              //=================================
  38.280              // Annotatation Type Usage
  38.281              //=================================
  38.282              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.283 -                "<FONT SIZE=\"+2\">" + NL +
  38.284 -                "Packages with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.285 -                "</TR>" + NL +
  38.286 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.287 -                "<TD><A HREF=\"../../pkg/package-summary.html\"><STRONG>pkg</STRONG></A></TD>"
  38.288 +                     "Packages with annotations of type " +
  38.289 +                     "<A HREF=\"../../pkg/AnnotationType.html\" " +
  38.290 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.291 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.292 +                     " NOWRAP>Package" +
  38.293 +                     "</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.294 +                     " NOWRAP>Description</TH>" + NL + "</TR>" + NL +
  38.295 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.296 +                     "<TD><A HREF=\"../../pkg/package-summary.html\"><STRONG>pkg" +
  38.297 +                     "</STRONG></A></TD>"
  38.298              },
  38.299  
  38.300              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.301 -                "Classes in <A HREF=\"../../pkg/package-summary.html\">pkg</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.302 -                "</TR>" + NL +
  38.303 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.304 -                "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.305 -                "<CODE>&nbsp;class</CODE></FONT></TD>" + NL +
  38.306 -                "<TD><CODE><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html\" title=\"class in pkg\">AnnotationTypeUsage</A></STRONG></CODE>"
  38.307 +                     "Classes in <A HREF=\"../../pkg/package-summary.html\">pkg" +
  38.308 +                     "</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" " +
  38.309 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.310 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.311 +                     " NOWRAP>Modifier and Type" +
  38.312 +                     "</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.313 +                     " NOWRAP>Class and Description</TH>" + NL +
  38.314 +                     "</TR>" + NL +
  38.315 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.316 +                     "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.317 +                     "<CODE>&nbsp;class</CODE></FONT></TD>" + NL +
  38.318 +                     "<TD><CODE><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html\" " +
  38.319 +                     "title=\"class in pkg\">AnnotationTypeUsage</A></STRONG></CODE>"
  38.320              },
  38.321  
  38.322              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.323 -                "Fields in <A HREF=\"../../pkg/package-summary.html\">pkg</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.324 -                "</TR>" + NL +
  38.325 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.326 -                "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.327 -                "<CODE>&nbsp;int</CODE></FONT></TD>" + NL +
  38.328 -                "<TD><CODE><STRONG>AnnotationTypeUsage.</STRONG><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html#field\">field</A></STRONG></CODE>"
  38.329 +                     "Fields in <A HREF=\"../../pkg/package-summary.html\">pkg" +
  38.330 +                     "</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" " +
  38.331 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.332 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.333 +                     " NOWRAP>Modifier and Type" +
  38.334 +                     "</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.335 +                     " NOWRAP>Field and Description</TH>" + NL +
  38.336 +                     "</TR>" + NL +
  38.337 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.338 +                     "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.339 +                     "<CODE>&nbsp;int</CODE></FONT></TD>" + NL +
  38.340 +                     "<TD><CODE><STRONG>AnnotationTypeUsage.</STRONG><STRONG>" +
  38.341 +                     "<A HREF=\"../../pkg/AnnotationTypeUsage.html#field\">field" +
  38.342 +                     "</A></STRONG></CODE>"
  38.343              },
  38.344  
  38.345              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.346 -                "Methods in <A HREF=\"../../pkg/package-summary.html\">pkg</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.347 -                "</TR>" + NL +
  38.348 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.349 -                "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.350 -                "<CODE>&nbsp;void</CODE></FONT></TD>" + NL +
  38.351 -                "<TD><CODE><STRONG>AnnotationTypeUsage.</STRONG><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html#method()\">method</A></STRONG>()</CODE>"
  38.352 +                     "Methods in <A HREF=\"../../pkg/package-summary.html\">pkg" +
  38.353 +                     "</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" " +
  38.354 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.355 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.356 +                     " NOWRAP>Modifier and Type" +
  38.357 +                     "</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.358 +                     " NOWRAP>Method and Description</TH>" + NL +
  38.359 +                     "</TR>" + NL +
  38.360 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.361 +                     "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.362 +                     "<CODE>&nbsp;void</CODE></FONT></TD>" + NL +
  38.363 +                     "<TD><CODE><STRONG>AnnotationTypeUsage.</STRONG><STRONG>" +
  38.364 +                     "<A HREF=\"../../pkg/AnnotationTypeUsage.html#method()\">" +
  38.365 +                     "method</A></STRONG>()</CODE>"
  38.366              },
  38.367  
  38.368              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.369 -                "Method parameters in <A HREF=\"../../pkg/package-summary.html\">pkg</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.370 -                "</TR>" + NL +
  38.371 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.372 -                "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.373 -                "<CODE>&nbsp;void</CODE></FONT></TD>" + NL +
  38.374 -                "<TD><CODE><STRONG>AnnotationTypeUsage.</STRONG><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html#methodWithParams(int, int)\">methodWithParams</A></STRONG>(int&nbsp;documented," + NL +
  38.375 -                "                 int&nbsp;undocmented)</CODE>"
  38.376 +                     "Method parameters in <A HREF=\"../../pkg/package-summary.html\">pkg" +
  38.377 +                     "</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" " +
  38.378 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.379 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.380 +                     " NOWRAP>Modifier and Type" +
  38.381 +                     "</TH>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.382 +                     " NOWRAP>Method and Description</TH>" + NL +
  38.383 +                     "</TR>" + NL +
  38.384 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.385 +                     "<TD ALIGN=\"right\" VALIGN=\"top\" WIDTH=\"1%\"><FONT SIZE=\"-1\">" + NL +
  38.386 +                     "<CODE>&nbsp;void</CODE></FONT></TD>" + NL +
  38.387 +                     "<TD><CODE><STRONG>AnnotationTypeUsage.</STRONG><STRONG>" +
  38.388 +                     "<A HREF=\"../../pkg/AnnotationTypeUsage.html#methodWithParams" +
  38.389 +                     "(int, int)\">methodWithParams</A></STRONG>(int&nbsp;documented," + NL +
  38.390 +                     "                 int&nbsp;undocmented)</CODE>"
  38.391              },
  38.392  
  38.393              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.394 -                "Constructors in <A HREF=\"../../pkg/package-summary.html\">pkg</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.395 -                "</TR>" + NL +
  38.396 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.397 -                "<TD><CODE><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html#AnnotationTypeUsage()\">AnnotationTypeUsage</A></STRONG>()</CODE>"
  38.398 +                     "Constructors in <A HREF=\"../../pkg/package-summary.html\">pkg" +
  38.399 +                     "</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" " +
  38.400 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.401 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.402 +                     " NOWRAP>Constructor and Description" +
  38.403 +                     "</TH>" + NL + "</TR>" + NL +
  38.404 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.405 +                     "<TD><CODE><STRONG><A HREF=\"../../pkg/" +
  38.406 +                     "AnnotationTypeUsage.html#AnnotationTypeUsage()\">" +
  38.407 +                     "AnnotationTypeUsage</A></STRONG>()</CODE>"
  38.408              },
  38.409  
  38.410              {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
  38.411 -                "Constructor parameters in <A HREF=\"../../pkg/package-summary.html\">pkg</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" title=\"annotation in pkg\">AnnotationType</A></FONT></TH>" + NL +
  38.412 -                "</TR>" + NL +
  38.413 -                "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.414 -                "<TD><CODE><STRONG><A HREF=\"../../pkg/AnnotationTypeUsage.html#AnnotationTypeUsage(int, int)\">AnnotationTypeUsage</A></STRONG>(int&nbsp;documented," + NL +
  38.415 -                "                    int&nbsp;undocmented)</CODE>"
  38.416 +                     "Constructor parameters in <A HREF=\"../../pkg/package-summary.html\">pkg" +
  38.417 +                     "</A> with annotations of type <A HREF=\"../../pkg/AnnotationType.html\" " +
  38.418 +                     "title=\"annotation in pkg\">AnnotationType</A></CAPTION>" + NL +
  38.419 +                     "<TR>" + NL + "<TH CLASS=\"TableHeader\" SCOPE=\"col\"" +
  38.420 +                     " NOWRAP>Constructor and Description" +
  38.421 +                     "</TH>" + NL + "</TR>" + NL +
  38.422 +                     "<TR BGCOLOR=\"white\" CLASS=\"TableRowColor\">" + NL +
  38.423 +                     "<TD><CODE><STRONG><A HREF=\"../../pkg/" +
  38.424 +                     "AnnotationTypeUsage.html#AnnotationTypeUsage(int, int)\">" +
  38.425 +                     "AnnotationTypeUsage</A></STRONG>(int&nbsp;documented," + NL +
  38.426 +                     "                    int&nbsp;undocmented)</CODE>"
  38.427              },
  38.428  
  38.429              //=================================
    39.1 --- a/test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java	Thu Mar 26 16:48:53 2009 -0700
    39.2 +++ b/test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java	Wed Apr 01 08:58:42 2009 -0700
    39.3 @@ -46,7 +46,8 @@
    39.4  
    39.5      //Input for string search tests.
    39.6      private static final String[][] TEST = {
    39.7 -        {BUG_ID + FS + "C.html",  "<STRONG>Method Summary</STRONG>"}
    39.8 +        {BUG_ID + FS + "C.html",  "<CAPTION CLASS=\"TableCaption\">" + NL +
    39.9 +                 "Method Summary</CAPTION>"}
   39.10      };
   39.11      private static final String[][] NEGATED_TEST = NO_TEST;
   39.12  
    40.1 --- a/test/tools/javap/T4884240.java	Thu Mar 26 16:48:53 2009 -0700
    40.2 +++ b/test/tools/javap/T4884240.java	Wed Apr 01 08:58:42 2009 -0700
    40.3 @@ -16,7 +16,7 @@
    40.4   *
    40.5   * You should have received a copy of the GNU General Public License version
    40.6   * 2 along with this work; if not, write to the Free Software Foundation,
    40.7 - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-15301 USA.
    40.8 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    40.9   *
   40.10   * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
   40.11   * CA 95054 USA or visit www.sun.com if you need additional information or

mercurial