# HG changeset patch # User xdono # Date 1238514852 25200 # Node ID ad698eaaa812cdb44460046d66cf666c5999a45f # Parent bad85507ed0c2050177cfe12d7f305f50e9173ed# Parent 5250b269afaaf872718660942a1f0855552dfffb Merge diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -60,7 +60,11 @@ /*** abstracts ***/ - public abstract void printSummaryLabel(ClassDoc cd); + public abstract void printSummaryLabel(); + + public abstract void printTableSummary(); + + public abstract void printSummaryTableHeader(ProgramElementDoc member); public abstract void printInheritedSummaryLabel(ClassDoc cd); @@ -342,12 +346,13 @@ * format for listing the API. Call methods from the sub-class to complete * the generation. */ - protected void printDeprecatedAPI(List deprmembers, String headingKey) { + protected void printDeprecatedAPI(List deprmembers, String headingKey, String tableSummary, String[] tableHeader) { if (deprmembers.size() > 0) { - writer.tableIndexSummary(); - writer.tableHeaderStart("#CCCCFF"); - writer.strongText(headingKey); - writer.tableHeaderEnd(); + writer.tableIndexSummary(tableSummary); + writer.tableCaptionStart(); + writer.printText(headingKey); + writer.tableCaptionEnd(); + writer.summaryTableHeader(tableHeader, "col"); for (int i = 0; i < deprmembers.size(); i++) { ProgramElementDoc member =(ProgramElementDoc)deprmembers.get(i); writer.trBgcolorStyle("white", "TableRowColor"); @@ -370,19 +375,26 @@ /** * Print use info. */ - protected void printUseInfo(List mems, String heading) { + protected void printUseInfo(List mems, String heading, String tableSummary) { if (mems == null) { return; } List members = mems; + boolean printedUseTableHeader = false; if (members.size() > 0) { - writer.tableIndexSummary(); - writer.tableUseInfoHeaderStart("#CCCCFF"); + writer.tableIndexSummary(tableSummary); + writer.tableSubCaptionStart(); writer.print(heading); - writer.tableHeaderEnd(); + writer.tableCaptionEnd(); for (Iterator it = members.iterator(); it.hasNext(); ) { ProgramElementDoc pgmdoc = it.next(); ClassDoc cd = pgmdoc.containingClass(); + if (!printedUseTableHeader) { + // Passing ProgramElementDoc helps decides printing + // interface or class header in case of nested classes. + this.printSummaryTableHeader(pgmdoc); + printedUseTableHeader = true; + } writer.printSummaryLinkType(this, pgmdoc); if (cd != null && !(pgmdoc instanceof ConstructorDoc) diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AbstractPackageIndexWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -35,6 +35,7 @@ * generate overview-frame.html as well as overview-summary.html. * * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public abstract class AbstractPackageIndexWriter extends HtmlDocletWriter { @@ -61,7 +62,7 @@ protected abstract void printOverviewHeader(); - protected abstract void printIndexHeader(String text); + protected abstract void printIndexHeader(String text, String tableSummary); protected abstract void printIndexRow(PackageDoc pkg); @@ -101,7 +102,10 @@ * Generate the frame or non-frame package index. */ protected void generateIndex() { - printIndexContents(packages, "doclet.Package_Summary"); + printIndexContents(packages, "doclet.Package_Summary", + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Package_Summary"), + configuration.getText("doclet.packages"))); } /** @@ -111,10 +115,10 @@ * @param packages Array of packages to be documented. * @param text String which will be used as the heading. */ - protected void printIndexContents(PackageDoc[] packages, String text) { + protected void printIndexContents(PackageDoc[] packages, String text, String tableSummary) { if (packages.length > 0) { Arrays.sort(packages); - printIndexHeader(text); + printIndexHeader(text, tableSummary); printAllClassesPackagesLink(); for(int i = 0; i < packages.length; i++) { if (packages[i] != null) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeOptionalMemberWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -34,6 +34,7 @@ * Writes annotation type optional member documentation in HTML format. * * @author Jamie Ho + * @author Bhavesh Patel (Modified) */ public class AnnotationTypeOptionalMemberWriterImpl extends AnnotationTypeRequiredMemberWriterImpl @@ -89,8 +90,27 @@ /** * {@inheritDoc} */ - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Annotation_Type_Optional_Member_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Annotation_Type_Optional_Member_Summary"); + } + + /** + * {@inheritDoc} + */ + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Annotation_Type_Optional_Member_Summary"), + configuration().getText("doclet.annotation_type_optional_members"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header = new String[] { + writer.getModifierTypeHeader(), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Annotation_Type_Optional_Member"), + configuration().getText("doclet.Description")) + }; + writer.summaryTableHeader(header, "col"); } /** diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -34,6 +34,7 @@ * Writes annotation type required member documentation in HTML format. * * @author Jamie Ho + * @author Bhavesh Patel (Modified) */ public class AnnotationTypeRequiredMemberWriterImpl extends AbstractMemberWriter implements AnnotationTypeRequiredMemberWriter, MemberSummaryWriter { @@ -178,8 +179,27 @@ /** * {@inheritDoc} */ - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Annotation_Type_Required_Member_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Annotation_Type_Required_Member_Summary"); + } + + /** + * {@inheritDoc} + */ + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Annotation_Type_Required_Member_Summary"), + configuration().getText("doclet.annotation_type_required_members"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header = new String[] { + writer.getModifierTypeHeader(), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Annotation_Type_Required_Member"), + configuration().getText("doclet.Description")) + }; + writer.summaryTableHeader(header, "col"); } /** diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -34,6 +34,7 @@ * Generate class usage information. * * @author Robert G. Field + * @author Bhavesh Patel (Modified) */ public class ClassUseWriter extends SubWriterHolderWriter { @@ -65,6 +66,13 @@ final ConstructorWriterImpl constrSubWriter; final FieldWriterImpl fieldSubWriter; final NestedClassWriterImpl classSubWriter; + // Summary for various use tables. + final String classUseTableSummary; + final String subclassUseTableSummary; + final String subinterfaceUseTableSummary; + final String fieldUseTableSummary; + final String methodUseTableSummary; + final String constructorUseTableSummary; /** @@ -116,6 +124,18 @@ constrSubWriter = new ConstructorWriterImpl(this); fieldSubWriter = new FieldWriterImpl(this); classSubWriter = new NestedClassWriterImpl(this); + classUseTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.classes")); + subclassUseTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.subclasses")); + subinterfaceUseTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.subinterfaces")); + fieldUseTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.fields")); + methodUseTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.methods")); + constructorUseTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.constructors")); } /** @@ -213,12 +233,13 @@ } protected void generatePackageList() throws IOException { - tableIndexSummary(); - tableHeaderStart("#CCCCFF"); + tableIndexSummary(useTableSummary); + tableCaptionStart(); printText("doclet.ClassUse_Packages.that.use.0", getLink(new LinkInfoImpl(LinkInfoImpl.CONTEXT_CLASS_USE_HEADER, classdoc, false))); - tableHeaderEnd(); + tableCaptionEnd(); + summaryTableHeader(packageTableHeader, "col"); for (Iterator it = pkgSet.iterator(); it.hasNext();) { PackageDoc pkg = it.next(); @@ -234,12 +255,13 @@ pkgToPackageAnnotations == null || pkgToPackageAnnotations.size() == 0) return; - tableIndexSummary(); - tableHeaderStart("#CCCCFF"); + tableIndexSummary(useTableSummary); + tableCaptionStart(); printText("doclet.ClassUse_PackageAnnotation", getLink(new LinkInfoImpl(LinkInfoImpl.CONTEXT_CLASS_USE_HEADER, classdoc, false))); - tableHeaderEnd(); + tableCaptionEnd(); + summaryTableHeader(packageTableHeader, "col"); for (Iterator it = pkgToPackageAnnotations.iterator(); it.hasNext();) { PackageDoc pkg = it.next(); trBgcolorStyle("white", "TableRowColor"); @@ -300,83 +322,68 @@ LinkInfoImpl.CONTEXT_CLASS_USE_HEADER, classdoc, false)); String pkgLink = getPackageLink(pkg, Util.getPackageName(pkg), false); classSubWriter.printUseInfo(pkgToClassAnnotations.get(pkg.name()), - configuration.getText("doclet.ClassUse_Annotation", classLink, - pkgLink)); - + configuration.getText("doclet.ClassUse_Annotation", classLink, + pkgLink), classUseTableSummary); classSubWriter.printUseInfo(pkgToClassTypeParameter.get(pkg.name()), - configuration.getText("doclet.ClassUse_TypeParameter", classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_TypeParameter", classLink, + pkgLink), classUseTableSummary); classSubWriter.printUseInfo(pkgToSubclass.get(pkg.name()), - configuration.getText("doclet.ClassUse_Subclass", classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_Subclass", classLink, + pkgLink), subclassUseTableSummary); classSubWriter.printUseInfo(pkgToSubinterface.get(pkg.name()), - configuration.getText("doclet.ClassUse_Subinterface", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_Subinterface", classLink, + pkgLink), subinterfaceUseTableSummary); classSubWriter.printUseInfo(pkgToImplementingClass.get(pkg.name()), - configuration.getText("doclet.ClassUse_ImplementingClass", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_ImplementingClass", classLink, + pkgLink), classUseTableSummary); fieldSubWriter.printUseInfo(pkgToField.get(pkg.name()), - configuration.getText("doclet.ClassUse_Field", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_Field", classLink, + pkgLink), fieldUseTableSummary); fieldSubWriter.printUseInfo(pkgToFieldAnnotations.get(pkg.name()), - configuration.getText("doclet.ClassUse_FieldAnnotations", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_FieldAnnotations", classLink, + pkgLink), fieldUseTableSummary); fieldSubWriter.printUseInfo(pkgToFieldTypeParameter.get(pkg.name()), - configuration.getText("doclet.ClassUse_FieldTypeParameter", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_FieldTypeParameter", classLink, + pkgLink), fieldUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodAnnotations.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodAnnotations", classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodAnnotations", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodParameterAnnotations.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodParameterAnnotations", classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodParameterAnnotations", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodTypeParameter.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodTypeParameter", classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodTypeParameter", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodReturn.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodReturn", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodReturn", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodReturnTypeParameter.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodReturnTypeParameter", classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodReturnTypeParameter", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodArgs.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodArgs", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodArgs", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodArgTypeParameter.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodArgsTypeParameters", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodArgsTypeParameters", classLink, + pkgLink), methodUseTableSummary); methodSubWriter.printUseInfo(pkgToMethodThrows.get(pkg.name()), - configuration.getText("doclet.ClassUse_MethodThrows", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_MethodThrows", classLink, + pkgLink), methodUseTableSummary); constrSubWriter.printUseInfo(pkgToConstructorAnnotations.get(pkg.name()), - configuration.getText("doclet.ClassUse_ConstructorAnnotations", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_ConstructorAnnotations", classLink, + pkgLink), constructorUseTableSummary); constrSubWriter.printUseInfo(pkgToConstructorParameterAnnotations.get(pkg.name()), - configuration.getText("doclet.ClassUse_ConstructorParameterAnnotations", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_ConstructorParameterAnnotations", classLink, + pkgLink), constructorUseTableSummary); constrSubWriter.printUseInfo(pkgToConstructorArgs.get(pkg.name()), - configuration.getText("doclet.ClassUse_ConstructorArgs", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_ConstructorArgs", classLink, + pkgLink), constructorUseTableSummary); constrSubWriter.printUseInfo(pkgToConstructorArgTypeParameter.get(pkg.name()), - configuration.getText("doclet.ClassUse_ConstructorArgsTypeParameters", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_ConstructorArgsTypeParameters", classLink, + pkgLink), constructorUseTableSummary); constrSubWriter.printUseInfo(pkgToConstructorThrows.get(pkg.name()), - configuration.getText("doclet.ClassUse_ConstructorThrows", - classLink, - pkgLink)); + configuration.getText("doclet.ClassUse_ConstructorThrows", classLink, + pkgLink), constructorUseTableSummary); } /** diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -35,6 +35,7 @@ * Write the Constants Summary Page in HTML format. * * @author Jamie Ho + * @author Bhavesh Patel (Modified) * @since 1.4 */ public class ConstantsSummaryWriterImpl extends HtmlDocletWriter @@ -50,6 +51,10 @@ */ private ClassDoc currentClassDoc; + private final String constantsTableSummary; + + private final String[] constantsTableHeader; + /** * Construct a ConstantsSummaryWriter. * @param configuration the configuration used in this run @@ -59,6 +64,13 @@ throws IOException { super(configuration, ConfigurationImpl.CONSTANTS_FILE_NAME); this.configuration = configuration; + constantsTableSummary = configuration.getText("doclet.Constants_Table_Summary", + configuration.getText("doclet.Constants_Summary")); + constantsTableHeader = new String[] { + getModifierTypeHeader(), + configuration.getText("doclet.ConstantField"), + configuration.getText("doclet.Value") + }; } /** @@ -151,12 +163,11 @@ * @param classStr the heading to print. */ protected void writeClassName(String classStr) { - table(1, 3, 0); - trBgcolorStyle("#EEEEFF", "TableSubHeadingColor"); - thAlignColspan("left", 3); + table(1, 3, 0, constantsTableSummary); + tableSubCaptionStart(); write(classStr); - thEnd(); - trEnd(); + tableCaptionEnd(); + summaryTableHeader(constantsTableHeader, "col"); } private void tableFooter(boolean isHeader) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/ConstructorWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -37,6 +37,7 @@ * * @author Robert Field * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public class ConstructorWriterImpl extends AbstractExecutableMemberWriter implements ConstructorWriter, MemberSummaryWriter { @@ -211,8 +212,34 @@ this.foundNonPubConstructor = foundNonPubConstructor; } - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Constructor_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Constructor_Summary"); + } + + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Constructor_Summary"), + configuration().getText("doclet.constructors"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header; + if (foundNonPubConstructor) { + header = new String[] { + configuration().getText("doclet.Modifier"), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Constructor"), + configuration().getText("doclet.Description")) + }; + } + else { + header = new String[] { + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Constructor"), + configuration().getText("doclet.Description")) + }; + } + writer.summaryTableHeader(header, "col"); } public void printSummaryAnchor(ClassDoc cd) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/DeprecatedListWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -35,6 +35,7 @@ * * @see java.util.List * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public class DeprecatedListWriter extends SubWriterHolderWriter { @@ -55,6 +56,28 @@ "doclet.Deprecated_Annotation_Type_Members" }; + private static final String[] SUMMARY_KEYS = new String[] { + "doclet.deprecated_interfaces", "doclet.deprecated_classes", + "doclet.deprecated_enums", "doclet.deprecated_exceptions", + "doclet.deprecated_errors", + "doclet.deprecated_annotation_types", + "doclet.deprecated_fields", + "doclet.deprecated_methods", "doclet.deprecated_constructors", + "doclet.deprecated_enum_constants", + "doclet.deprecated_annotation_type_members" + }; + + private static final String[] HEADER_KEYS = new String[] { + "doclet.Interface", "doclet.Class", + "doclet.Enum", "doclet.Exceptions", + "doclet.Errors", + "doclet.AnnotationType", + "doclet.Field", + "doclet.Method", "doclet.Constructor", + "doclet.Enum_Constant", + "doclet.Annotation_Type_Member" + }; + private AbstractMemberWriter[] writers; private ConfigurationImpl configuration; @@ -119,11 +142,20 @@ ulEnd(); println(); + String memberTableSummary; + String[] memberTableHeader = new String[1]; for (int i = 0; i < DeprecatedAPIListBuilder.NUM_TYPES; i++) { if (deprapi.hasDocumentation(i)) { writeAnchor(deprapi, i); + memberTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText(HEADING_KEYS[i]), + configuration.getText(SUMMARY_KEYS[i])); + memberTableHeader[0] = configuration.getText("doclet.0_and_1", + configuration.getText(HEADER_KEYS[i]), + configuration.getText("doclet.Description")); writers[i].printDeprecatedAPI(deprapi.getList(i), - HEADING_KEYS[i]); + HEADING_KEYS[i], memberTableSummary, memberTableHeader); } } printDeprecatedFooter(); diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/EnumConstantWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -35,6 +35,7 @@ * Writes enum constant documentation in HTML format. * * @author Jamie Ho + * @author Bhavesh Patel (Modified) */ public class EnumConstantWriterImpl extends AbstractMemberWriter implements EnumConstantWriter, MemberSummaryWriter { @@ -194,8 +195,23 @@ return VisibleMemberMap.ENUM_CONSTANTS; } - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Enum_Constant_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Enum_Constant_Summary"); + } + + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Enum_Constant_Summary"), + configuration().getText("doclet.enum_constants"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header = new String[] { + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Enum_Constant"), + configuration().getText("doclet.Description")) + }; + writer.summaryTableHeader(header, "col"); } public void printSummaryAnchor(ClassDoc cd) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/FieldWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -37,6 +37,7 @@ * @author Robert Field * @author Atul M Dambalkar * @author Jamie Ho (rewrite) + * @author Bhavesh Patel (Modified) */ public class FieldWriterImpl extends AbstractMemberWriter implements FieldWriter, MemberSummaryWriter { @@ -236,8 +237,24 @@ return VisibleMemberMap.FIELDS; } - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Field_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Field_Summary"); + } + + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Field_Summary"), + configuration().getText("doclet.fields"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header = new String[] { + writer.getModifierTypeHeader(), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Field"), + configuration().getText("doclet.Description")) + }; + writer.summaryTableHeader(header, "col"); } public void printSummaryAnchor(ClassDoc cd) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -236,17 +236,19 @@ configuration.tagletManager.getCustomTags(doc), getTagletWriterInstance(false), output); String outputString = output.toString().trim(); - // For RootDoc and ClassDoc, this section is not the definition description - // but the start of definition list. + // For RootDoc, ClassDoc and PackageDoc, this section is not the + // definition description but the start of definition list. if (!outputString.isEmpty()) { - if (!(doc instanceof RootDoc || doc instanceof ClassDoc)) { + if (!(doc instanceof RootDoc || doc instanceof ClassDoc || + doc instanceof PackageDoc)) { printMemberDetailsListStartTag(); dd(); } printTagsInfoHeader(); print(outputString); printTagsInfoFooter(); - if (!(doc instanceof RootDoc || doc instanceof ClassDoc)) + if (!(doc instanceof RootDoc || doc instanceof ClassDoc || + doc instanceof PackageDoc)) ddEnd(); } } @@ -785,6 +787,15 @@ } /** + * Print the Html table tag for the index summary tables. + * + * @param summary the summary for the table tag summary attribute. + */ + public void tableIndexSummary(String summary) { + table(1, "100%", 3, 0, summary); + } + + /** * Same as {@link #tableIndexSummary()}. */ public void tableIndexDetail() { @@ -800,6 +811,40 @@ } /** + * Print table caption. + */ + public void tableCaptionStart() { + captionStyle("TableCaption"); + } + + /** + * Print table sub-caption. + */ + public void tableSubCaptionStart() { + captionStyle("TableSubCaption"); + } + + /** + * Print table caption end tags. + */ + public void tableCaptionEnd() { + captionEnd(); + } + + /** + * Print summary table header. + */ + public void summaryTableHeader(String[] header, String scope) { + tr(); + for ( int i=0; i < header.length; i++ ) { + thScopeNoWrap("TableHeader", scope); + print(header[i]); + thEnd(); + } + trEnd(); + } + + /** * Prine table header information about color, column span and the font. * * @param color Background color. diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/MethodWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -38,6 +38,7 @@ * @author Robert Field * @author Atul M Dambalkar * @author Jamie Ho (rewrite) + * @author Bhavesh Patel (Modified) */ public class MethodWriterImpl extends AbstractExecutableMemberWriter implements MethodWriter, MemberSummaryWriter { @@ -255,8 +256,24 @@ return VisibleMemberMap.METHODS; } - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Method_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Method_Summary"); + } + + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Method_Summary"), + configuration().getText("doclet.methods"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header = new String[] { + writer.getModifierTypeHeader(), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Method"), + configuration().getText("doclet.Description")) + }; + writer.summaryTableHeader(header, "col"); } public void printSummaryAnchor(ClassDoc cd) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/NestedClassWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -37,6 +37,7 @@ * @author Robert Field * @author Atul M Dambalkar * @author Jamie Ho (rewrite) + * @author Bhavesh Patel (Modified) */ public class NestedClassWriterImpl extends AbstractMemberWriter implements MemberSummaryWriter { @@ -147,8 +148,35 @@ return VisibleMemberMap.INNERCLASSES; } - public void printSummaryLabel(ClassDoc cd) { - writer.strongText("doclet.Nested_Class_Summary"); + public void printSummaryLabel() { + writer.printText("doclet.Nested_Class_Summary"); + } + + public void printTableSummary() { + writer.tableIndexSummary(configuration().getText("doclet.Member_Table_Summary", + configuration().getText("doclet.Nested_Class_Summary"), + configuration().getText("doclet.nested_classes"))); + } + + public void printSummaryTableHeader(ProgramElementDoc member) { + String[] header; + if (member.isInterface()) { + header = new String[] { + writer.getModifierTypeHeader(), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Interface"), + configuration().getText("doclet.Description")) + }; + } + else { + header = new String[] { + writer.getModifierTypeHeader(), + configuration().getText("doclet.0_and_1", + configuration().getText("doclet.Class"), + configuration().getText("doclet.Description")) + }; + } + writer.summaryTableHeader(header, "col"); } public void printSummaryAnchor(ClassDoc cd) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexFrameWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -114,7 +114,7 @@ * * @param text Text string will not be used in this method. */ - protected void printIndexHeader(String text) { + protected void printIndexHeader(String text, String tableSummary) { printTableHeader(false); } diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageIndexWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -36,6 +36,7 @@ * with the "pacakge-summary.html" file for the clicked package. * * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public class PackageIndexWriter extends AbstractPackageIndexWriter { @@ -123,7 +124,10 @@ List list = groupPackageMap.get(groupname); if (list != null && list.size() > 0) { printIndexContents(list.toArray(new PackageDoc[list.size()]), - groupname); + groupname, + configuration.getText("doclet.Member_Table_Summary", + groupname, + configuration.getText("doclet.packages"))); } } } @@ -149,11 +153,12 @@ /** * Print Html tags for the table for this package index. */ - protected void printIndexHeader(String text) { - tableIndexSummary(); - tableHeaderStart("#CCCCFF"); - strong(text); - tableHeaderEnd(); + protected void printIndexHeader(String text, String tableSummary) { + tableIndexSummary(tableSummary); + tableCaptionStart(); + print(text); + tableCaptionEnd(); + summaryTableHeader(packageTableHeader, "col"); } /** diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -34,6 +34,7 @@ * Generate package usage information. * * @author Robert G. Field + * @author Bhavesh Patel (Modified) */ public class PackageUseWriter extends SubWriterHolderWriter { @@ -131,11 +132,12 @@ } protected void generatePackageList() throws IOException { - tableIndexSummary(); - tableHeaderStart("#CCCCFF"); + tableIndexSummary(useTableSummary); + tableCaptionStart(); printText("doclet.ClassUse_Packages.that.use.0", getPackageLink(pkgdoc, Util.getPackageName(pkgdoc), false)); - tableHeaderEnd(); + tableCaptionEnd(); + summaryTableHeader(packageTableHeader, "col"); Iterator it = usingPackageToUsedClasses.keySet().iterator(); while (it.hasNext()) { PackageDoc pkg = configuration.root.packageNamed(it.next()); @@ -147,6 +149,11 @@ } protected void generateClassList() throws IOException { + String[] classTableHeader = new String[] { + configuration.getText("doclet.0_and_1", + configuration.getText("doclet.Class"), + configuration.getText("doclet.Description")) + }; Iterator itp = usingPackageToUsedClasses.keySet().iterator(); while (itp.hasNext()) { String packageName = itp.next(); @@ -154,12 +161,14 @@ if (usingPackage != null) { anchor(usingPackage.name()); } - tableIndexSummary(); - tableHeaderStart("#CCCCFF"); + tableIndexSummary(configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.classes"))); + tableCaptionStart(); printText("doclet.ClassUse_Classes.in.0.used.by.1", getPackageLink(pkgdoc, Util.getPackageName(pkgdoc), false), getPackageLink(usingPackage,Util.getPackageName(usingPackage), false)); - tableHeaderEnd(); + tableCaptionEnd(); + summaryTableHeader(classTableHeader, "col"); Iterator itc = usingPackageToUsedClasses.get(packageName).iterator(); while (itc.hasNext()) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java Tue Mar 31 08:54:12 2009 -0700 @@ -38,6 +38,7 @@ * class-kind will update the frame with the clicked class-kind page. * * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public class PackageWriterImpl extends HtmlDocletWriter implements PackageSummaryWriter { @@ -107,14 +108,15 @@ /** * {@inheritDoc} */ - public void writeClassesSummary(ClassDoc[] classes, String label) { + public void writeClassesSummary(ClassDoc[] classes, String label, String tableSummary, String[] tableHeader) { if(classes.length > 0) { Arrays.sort(classes); - tableIndexSummary(); + tableIndexSummary(tableSummary); boolean printedHeading = false; for (int i = 0; i < classes.length; i++) { if (!printedHeading) { - printFirstRow(label); + printTableCaption(label); + printFirstRow(tableHeader); printedHeading = true; } if (!Util.isCoreClass(classes[i]) || @@ -149,14 +151,23 @@ } /** + * Print the table caption for the class-listing. + * + * @param label label for the Class kind listing. + */ + protected void printTableCaption(String label) { + tableCaptionStart(); + print(label); + tableCaptionEnd(); + } + + /** * Print the table heading for the class-listing. * - * @param label Label for the Class kind listing. + * @param tableHeader table header string for the Class listing. */ - protected void printFirstRow(String label) { - tableHeaderStart("#CCCCFF"); - strong(label); - tableHeaderEnd(); + protected void printFirstRow(String[] tableHeader) { + summaryTableHeader(tableHeader, "col"); } /** diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/StylesheetWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/StylesheetWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/StylesheetWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -33,6 +33,7 @@ * Writes the style sheet for the doclet output. * * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public class StylesheetWriter extends HtmlDocletWriter { @@ -115,6 +116,13 @@ println("background-color:#FFFFFF; color:#000000}"); print(".NavBarCell3 { font-family: Arial, Helvetica, sans-serif; "); println("background-color:#FFFFFF; color:#000000}"); + + print("/* "); printText("doclet.Style_line_12"); println(" */"); + 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; }"); + print(" /* "); printText("doclet.Style_line_5"); println(" */"); + 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; }"); + print(" /* "); printText("doclet.Style_line_6"); println(" */"); + print(".TableHeader { text-align: center; font-size: 80%; font-weight: bold; }"); println(""); } diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -43,6 +43,7 @@ * * @author Robert Field * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public abstract class SubWriterHolderWriter extends HtmlDocletWriter { @@ -72,10 +73,11 @@ public void printSummaryHeader(AbstractMemberWriter mw, ClassDoc cd) { mw.printSummaryAnchor(cd); - tableIndexSummary(); - tableHeaderStart("#CCCCFF"); - mw.printSummaryLabel(cd); - tableHeaderEnd(); + mw.printTableSummary(); + tableCaptionStart(); + mw.printSummaryLabel(); + tableCaptionEnd(); + mw.printSummaryTableHeader(cd); } public void printTableHeadingBackground(String str) { diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -37,6 +37,7 @@ * * @since 1.2 * @author Atul M Dambalkar + * @author Bhavesh Patel (Modified) */ public class HtmlWriter extends PrintWriter { @@ -67,6 +68,21 @@ protected boolean memberDetailsListPrinted; /** + * Header for tables displaying packages and description.. + */ + protected final String[] packageTableHeader; + + /** + * Summary for use tables displaying class and package use. + */ + protected final String useTableSummary; + + /** + * Column header for class docs displaying Modifier and Type header. + */ + protected final String modifierTypeHeader; + + /** * Constructor. * * @param path The directory path to be created for this file @@ -86,6 +102,15 @@ this.configuration = configuration; htmlFilename = filename; this.memberDetailsListPrinted = false; + packageTableHeader = new String[] { + configuration.getText("doclet.Package"), + configuration.getText("doclet.Description") + }; + useTableSummary = configuration.getText("doclet.Use_Table_Summary", + configuration.getText("doclet.packages")); + modifierTypeHeader = configuration.getText("doclet.0_and_1", + configuration.getText("doclet.Modifier"), + configuration.getText("doclet.Type")); } /** @@ -803,6 +828,26 @@ } /** + * Print HTML <TABLE BORDER="border" WIDTH="width" + * CELLPADDING="cellpadding" CELLSPACING="cellspacing" SUMMARY="summary"> tag. + * + * @param border Border size. + * @param width Width of the table. + * @param cellpadding Cellpadding for the table cells. + * @param cellspacing Cellspacing for the table cells. + * @param summary Table summary. + */ + public void table(int border, String width, int cellpadding, + int cellspacing, String summary) { + println(DocletConstants.NL + + ""); + } + + /** * Print HTML <TABLE BORDER="border" CELLPADDING="cellpadding" * CELLSPACING="cellspacing"> tag. * @@ -819,6 +864,23 @@ } /** + * Print HTML <TABLE BORDER="border" CELLPADDING="cellpadding" + * CELLSPACING="cellspacing" SUMMARY="summary"> tag. + * + * @param border Border size. + * @param cellpadding Cellpadding for the table cells. + * @param cellspacing Cellspacing for the table cells. + * @param summary Table summary. + */ + public void table(int border, int cellpadding, int cellspacing, String summary) { + println(DocletConstants.NL + + "
"); + } + + /** * Print HTML <TABLE BORDER="border" WIDTH="width"> * * @param border Border size. @@ -913,6 +975,23 @@ } /** + * Print <CAPTION CLASS="stylename"> tag. Adds a newline character + * at the end. + * + * @param stylename style to be applied. + */ + public void captionStyle(String stylename) { + println(""); + } + + /** * Print <TR BGCOLOR="color" CLASS="stylename"> tag. Adds a newline character * at the end. * @@ -953,6 +1032,23 @@ } /** + * Print <TH CLASS="stylename" SCOPE="scope" NOWRAP> tag. + * + * @param stylename style to be applied. + * @param scope the scope attribute. + */ + public void thScopeNoWrap(String stylename, String scope) { + print("" + "" + NL + "" }, // Class documentation {BUG_ID + FS + "pkg1" + FS + "C1.html", - "" + "" + NL + "" }, {BUG_ID + FS + "pkg1" + FS + "C1.html", "" @@ -62,29 +64,32 @@ // Class use documentation {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", - "" + "" + NL + "" }, {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", "" }, {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", - "" + "" + NL + "" }, // Deprecated {BUG_ID + FS + "deprecated-list.html", - "" + "" }, // Constant values {BUG_ID + FS + "constant-values.html", - "" - }, - {BUG_ID + FS + "constant-values.html", - "" + "" + NL + "" + NL + + "" }, // Serialized Form diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java --- a/langtools/test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java Tue Mar 31 08:54:12 2009 -0700 @@ -25,7 +25,7 @@ /* * @test - * @bug 6786690 + * @bug 6786690 6820360 * @summary This test verifies the nesting of definition list tags. * @author Bhavesh Patel * @library ../lib/ @@ -36,7 +36,7 @@ public class TestHtmlDefinitionListTag extends JavadocTester { - private static final String BUG_ID = "6786690"; + private static final String BUG_ID = "6786690-6820360"; // Test common to all runs of javadoc. The class signature should print // properly enclosed definition list tags and the Annotation Type @@ -55,6 +55,9 @@ // serialized form should have properly nested definition list tags // enclosing comments, tags and deprecated information. private static final String[][] TEST_CMNT_DEPR = { + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "
" + NL + + "
Since:
" + NL + + "
JDK1.0
"}, {BUG_ID + FS + "pkg1" + FS + "C1.html", "
" + NL + "
Since:
" + NL + "
JDK1.0
" + NL + "
See Also:
" + @@ -193,6 +196,9 @@ // should display properly nested definition list tags for comments, tags // and deprecated information. private static final String[][] TEST_NODEPR = { + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "
" + NL + + "
Since:
" + NL + + "
JDK1.0
"}, {BUG_ID + FS + "pkg1" + FS + "C1.html", "
" + NL + "
Since:
" + NL + "
JDK1.0
" + NL + "
See Also:
" + @@ -302,6 +308,8 @@ // Test for valid HTML generation which should not comprise of empty // definition list tags. private static final String[][] NEGATED_TEST = { + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "
"}, + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "
" + NL + "
"}, {BUG_ID + FS + "pkg1" + FS + "C1.html", "
"}, {BUG_ID + FS + "pkg1" + FS + "C1.html", "
" + NL + "
"}, {BUG_ID + FS + "pkg1" + FS + "C1.ModalExclusionType.html", "
"}, diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/package-info.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlDefinitionListTag/pkg1/package-info.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,29 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +/** + * Test package 1. + * + * @since JDK1.0 + */ +package pkg1; diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java --- a/langtools/test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/test/com/sun/javadoc/testHtmlStrongTag/TestHtmlStrongTag.java Tue Mar 31 08:54:12 2009 -0700 @@ -38,14 +38,15 @@ private static final String BUG_ID = "6786028"; private static final String[][] TEST1 = { - {BUG_ID + FS + "pkg1" + FS + "C1.html", "Method Summary"}, - {BUG_ID + FS + "pkg1" + FS + "C1.html", "See Also:"}, - {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "Class Summary"}}; + {BUG_ID + FS + "pkg1" + FS + "C1.html", "See Also:"}}; private static final String[][] NEGATED_TEST1 = { - {BUG_ID + FS + "pkg1" + FS + "C1.html", ""}}; + {BUG_ID + FS + "pkg1" + FS + "C1.html", "Method Summary"}, + {BUG_ID + FS + "pkg1" + FS + "C1.html", ""}, + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "Class Summary"}}; private static final String[][] TEST2 = { + {BUG_ID + FS + "pkg2" + FS + "C2.html", "Comments:"}}; + private static final String[][] NEGATED_TEST2 = { {BUG_ID + FS + "pkg2" + FS + "C2.html", "Method Summary"}, - {BUG_ID + FS + "pkg2" + FS + "C2.html", "Comments:"}, {BUG_ID + FS + "pkg1" + FS + "package-summary.html", "Class Summary"}}; private static final String[] ARGS1 = @@ -62,7 +63,7 @@ public static void main(String[] args) { TestHtmlStrongTag tester = new TestHtmlStrongTag(); run(tester, ARGS1, TEST1, NEGATED_TEST1); - run(tester, ARGS2, TEST2, NO_TEST); + run(tester, ARGS2, TEST2, NEGATED_TEST2); tester.printSummary(); } diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,478 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +/* + * @test + * @bug 6786688 + * @summary HTML tables should have table summary, caption and table headers. + * @author Bhavesh Patel + * @library ../lib/ + * @build JavadocTester + * @build TestHtmlTableTags + * @run main TestHtmlTableTags + */ + +public class TestHtmlTableTags extends JavadocTester { + + //Test information. + private static final String BUG_ID = "6786688"; + + //Javadoc arguments. + private static final String[] ARGS = new String[] { + "-d", BUG_ID, "-sourcepath", SRC_DIR, "-use", "pkg1", "pkg2" + }; + + //Input for string tests for HTML table tags. + private static final String[][] TABLE_TAGS_TEST = { + /* + * Test for validating summary for HTML tables + */ + + //Package summary + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", + "
"); + } + + /** + * Print </CAPTION> tag. Add a newline character at the end. + */ + public void captionEnd() { + println("
"); + } + + /* + * Returns a header for Modifier and Type column of a table. + */ + public String getModifierTypeHeader() { + return modifierTypeHeader; + } + + /** * Print <TH align="align" COLSPAN=i> tag. * * @param align the align attribute. diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties --- a/langtools/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard.properties Tue Mar 31 08:54:12 2009 -0700 @@ -83,6 +83,17 @@ doclet.Deprecated_Methods=Deprecated Methods doclet.Deprecated_Enum_Constants=Deprecated Enum Constants doclet.Deprecated_Annotation_Type_Members=Deprecated Annotation Type Elements +doclet.deprecated_classes=deprecated classes +doclet.deprecated_enums=deprecated enums +doclet.deprecated_interfaces=deprecated interfaces +doclet.deprecated_exceptions=deprecated exceptions +doclet.deprecated_annotation_types=deprecated annotation types +doclet.deprecated_errors=deprecated errors +doclet.deprecated_fields=deprecated fields +doclet.deprecated_constructors=deprecated constructors +doclet.deprecated_methods=deprecated methods +doclet.deprecated_enum_constants=deprecated enum constants +doclet.deprecated_annotation_type_members=deprecated annotation type elements doclet.Frame_Output=Frame Output doclet.Docs_generated_by_Javadoc=Documentation generated by Javadoc. doclet.Generated_Docs_Untitled=Generated Documentation (Untitled) @@ -171,6 +182,7 @@ doclet.Style_line_9=Example of smaller, sans-serif font in frames doclet.Style_line_10=Navigation bar fonts and colors doclet.Style_line_11=Dark Blue +doclet.Style_line_12=Table caption style doclet.ClassUse_Packages.that.use.0=Packages that use {0} doclet.ClassUse_Uses.of.0.in.1=Uses of {0} in {1} doclet.ClassUse_Classes.in.0.used.by.1=Classes in {0} used by {1} diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java --- a/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/PackageSummaryWriter.java Tue Mar 31 08:54:12 2009 -0700 @@ -64,7 +64,7 @@ * @param classes the array of classes to document. * @param label the label for this table. */ - public abstract void writeClassesSummary(ClassDoc[] classes, String label); + public abstract void writeClassesSummary(ClassDoc[] classes, String label, String tableSummary, String[] tableHeader); /** * Write the header for the summary. diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java --- a/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/PackageSummaryBuilder.java Tue Mar 31 08:54:12 2009 -0700 @@ -40,6 +40,7 @@ * Do not use it as an API * * @author Jamie Ho + * @author Bhavesh Patel (Modified) * @since 1.5 */ public class PackageSummaryBuilder extends AbstractBuilder { @@ -184,7 +185,15 @@ * Build the summary for the classes in this package. */ public void buildClassSummary() { - ClassDoc[] classes = + String classTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Class_Summary"), + configuration.getText("doclet.classes")); + String[] classTableHeader = new String[] { + configuration.getText("doclet.Class"), + configuration.getText("doclet.Description") + }; + ClassDoc[] classes = packageDoc.isIncluded() ? packageDoc.ordinaryClasses() : configuration.classDocCatalog.ordinaryClasses( @@ -192,7 +201,8 @@ if (classes.length > 0) { packageWriter.writeClassesSummary( classes, - configuration.getText("doclet.Class_Summary")); + configuration.getText("doclet.Class_Summary"), + classTableSummary, classTableHeader); } } @@ -200,7 +210,15 @@ * Build the summary for the interfaces in this package. */ public void buildInterfaceSummary() { - ClassDoc[] interfaces = + String interfaceTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Interface_Summary"), + configuration.getText("doclet.interfaces")); + String[] interfaceTableHeader = new String[] { + configuration.getText("doclet.Interface"), + configuration.getText("doclet.Description") + }; + ClassDoc[] interfaces = packageDoc.isIncluded() ? packageDoc.interfaces() : configuration.classDocCatalog.interfaces( @@ -208,7 +226,8 @@ if (interfaces.length > 0) { packageWriter.writeClassesSummary( interfaces, - configuration.getText("doclet.Interface_Summary")); + configuration.getText("doclet.Interface_Summary"), + interfaceTableSummary, interfaceTableHeader); } } @@ -216,7 +235,15 @@ * Build the summary for the enums in this package. */ public void buildAnnotationTypeSummary() { - ClassDoc[] annotationTypes = + String annotationtypeTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Annotation_Types_Summary"), + configuration.getText("doclet.annotationtypes")); + String[] annotationtypeTableHeader = new String[] { + configuration.getText("doclet.AnnotationType"), + configuration.getText("doclet.Description") + }; + ClassDoc[] annotationTypes = packageDoc.isIncluded() ? packageDoc.annotationTypes() : configuration.classDocCatalog.annotationTypes( @@ -224,7 +251,8 @@ if (annotationTypes.length > 0) { packageWriter.writeClassesSummary( annotationTypes, - configuration.getText("doclet.Annotation_Types_Summary")); + configuration.getText("doclet.Annotation_Types_Summary"), + annotationtypeTableSummary, annotationtypeTableHeader); } } @@ -232,7 +260,15 @@ * Build the summary for the enums in this package. */ public void buildEnumSummary() { - ClassDoc[] enums = + String enumTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Enum_Summary"), + configuration.getText("doclet.enums")); + String[] enumTableHeader = new String[] { + configuration.getText("doclet.Enum"), + configuration.getText("doclet.Description") + }; + ClassDoc[] enums = packageDoc.isIncluded() ? packageDoc.enums() : configuration.classDocCatalog.enums( @@ -240,7 +276,8 @@ if (enums.length > 0) { packageWriter.writeClassesSummary( enums, - configuration.getText("doclet.Enum_Summary")); + configuration.getText("doclet.Enum_Summary"), + enumTableSummary, enumTableHeader); } } @@ -248,7 +285,15 @@ * Build the summary for the exceptions in this package. */ public void buildExceptionSummary() { - ClassDoc[] exceptions = + String exceptionTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Exception_Summary"), + configuration.getText("doclet.exceptions")); + String[] exceptionTableHeader = new String[] { + configuration.getText("doclet.Exception"), + configuration.getText("doclet.Description") + }; + ClassDoc[] exceptions = packageDoc.isIncluded() ? packageDoc.exceptions() : configuration.classDocCatalog.exceptions( @@ -256,7 +301,8 @@ if (exceptions.length > 0) { packageWriter.writeClassesSummary( exceptions, - configuration.getText("doclet.Exception_Summary")); + configuration.getText("doclet.Exception_Summary"), + exceptionTableSummary, exceptionTableHeader); } } @@ -264,7 +310,15 @@ * Build the summary for the errors in this package. */ public void buildErrorSummary() { - ClassDoc[] errors = + String errorTableSummary = + configuration.getText("doclet.Member_Table_Summary", + configuration.getText("doclet.Error_Summary"), + configuration.getText("doclet.errors")); + String[] errorTableHeader = new String[] { + configuration.getText("doclet.Error"), + configuration.getText("doclet.Description") + }; + ClassDoc[] errors = packageDoc.isIncluded() ? packageDoc.errors() : configuration.classDocCatalog.errors( @@ -272,7 +326,8 @@ if (errors.length > 0) { packageWriter.writeClassesSummary( errors, - configuration.getText("doclet.Error_Summary")); + configuration.getText("doclet.Error_Summary"), + errorTableSummary, errorTableHeader); } } diff -r bad85507ed0c -r ad698eaaa812 langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties --- a/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties Tue Mar 31 08:54:12 2009 -0700 @@ -82,6 +82,7 @@ doclet.Errors=Errors doclet.Classes=Classes doclet.Packages=Packages +doclet.packages=packages doclet.All_Classes=All Classes doclet.All_Superinterfaces=All Superinterfaces: doclet.All_Implemented_Interfaces=All Implemented Interfaces: @@ -92,14 +93,20 @@ doclet.Class=Class doclet.AnnotationType=Annotation Type doclet.annotationtype=annotation type +doclet.annotationtypes=annotation types doclet.Enum=Enum doclet.enum=enum +doclet.enums=enums doclet.interface=interface +doclet.interfaces=interfaces doclet.class=class +doclet.classes=classes doclet.Error=Error doclet.error=error +doclet.errors=errors doclet.Exception=Exception doclet.exception=exception +doclet.exceptions=exceptions doclet.extended_by=extended by doclet.extends=extends doclet.Package_private=(package private) @@ -125,6 +132,32 @@ doclet.value_tag_invalid_constant=@value tag (which references {0}) can only be used in constants. doclet.dest_dir_create=Creating destination directory: "{0}" doclet.in={0} in {1} +doclet.Use_Table_Summary=Use table, listing {0}, and an explanation +doclet.Constants_Table_Summary={0} table, listing constant fields, and values +doclet.Member_Table_Summary={0} table, listing {1}, and an explanation +doclet.fields=fields +doclet.constructors=constructors +doclet.methods=methods +doclet.annotation_type_optional_members=optional elements +doclet.annotation_type_required_members=required elements +doclet.enum_constants=enum constants +doclet.nested_classes=nested classes +doclet.subclasses=subclasses +doclet.subinterfaces=subinterfaces +doclet.Modifier=Modifier +doclet.Type=Type +doclet.Field=Field +doclet.Constructor=Constructor +doclet.Method=Method +doclet.Annotation_Type_Optional_Member=Optional Element +doclet.Annotation_Type_Required_Member=Required Element +doclet.Annotation_Type_Member=Annotation Type Element +doclet.Enum_Constant=Enum Constant +doclet.Class=Class +doclet.Description=Description +doclet.ConstantField=Constant Field +doclet.Value=Value +doclet.0_and_1={0} and {1} #Documentation for Enums doclet.enum_values_doc=\n\ diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHeadings/TestHeadings.java --- a/langtools/test/com/sun/javadoc/testHeadings/TestHeadings.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/test/com/sun/javadoc/testHeadings/TestHeadings.java Tue Mar 31 08:54:12 2009 -0700 @@ -47,14 +47,16 @@ private static final String[][] TEST = { //Package summary {BUG_ID + FS + "pkg1" + FS + "package-summary.html", - "" + NL + - "Class Summary" + + "ClassDescription" + NL + - "Field Summary" + + "Modifier and TypeField and DescriptionMethods inherited from class " + "java.lang.Object" + NL + - "Packages that use C1" + + "PackageDescription" + NL + "Uses of C1 in " + "pkg2Fields in " + "pkg2 " + "declared as C1" + + "Modifier and TypeField and Description" + NL + - "Deprecated Methods" + + "Method and Descriptionpkg1.C1pkg1.C1" + + "Modifier and TypeConstant FieldValue
" + }, + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "package-summary.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "package-summary.html", + "
" + }, + // Class documentation + {BUG_ID + FS + "pkg1" + FS + "C1.html", + "
" + }, + {BUG_ID + FS + "pkg1" + FS + "C1.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "C3.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "C4.html", + "
" + }, + // Class use documentation + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html", + "
" + }, + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", + "
" + }, + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", + "
" + }, + // Package use documentation + {BUG_ID + FS + "pkg1" + FS + "package-use.html", + "
" + }, + {BUG_ID + FS + "pkg1" + FS + "package-use.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "package-use.html", + "
" + }, + {BUG_ID + FS + "pkg2" + FS + "package-use.html", + "
" + }, + // Deprecated + {BUG_ID + FS + "deprecated-list.html", + "
" + }, + {BUG_ID + FS + "deprecated-list.html", + "
" + }, + // Constant values + {BUG_ID + FS + "constant-values.html", + "
" + }, + // Overview Summary + {BUG_ID + FS + "overview-summary.html", + "
" + }, + + /* + * Test for validating caption for HTML tables + */ + + //Package summary + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", + "" + }, + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-summary.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-summary.html", + "" + }, + // Class documentation + {BUG_ID + FS + "pkg1" + FS + "C1.html", + "" + }, + {BUG_ID + FS + "pkg1" + FS + "C1.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C3.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C4.html", + "" + }, + // Class use documentation + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html", + "" + }, + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", + "" + }, + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", + "" + }, + // Package use documentation + {BUG_ID + FS + "pkg1" + FS + "package-use.html", + "" + }, + {BUG_ID + FS + "pkg1" + FS + "package-use.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-use.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-use.html", + "" + }, + // Deprecated + {BUG_ID + FS + "deprecated-list.html", + "" + }, + {BUG_ID + FS + "deprecated-list.html", + "" + }, + // Constant values + {BUG_ID + FS + "constant-values.html", + "" + }, + // Overview Summary + {BUG_ID + FS + "overview-summary.html", + "" + }, + + /* + * Test for validating headers for HTML tables + */ + + //Package summary + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-summary.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-summary.html", + "" + NL + "" + }, + // Class documentation + {BUG_ID + FS + "pkg1" + FS + "C1.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg1" + FS + "C1.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C3.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "C4.html", + "" + NL + "" + }, + // Class use documentation + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", + "" + NL + "" + }, + // Package use documentation + {BUG_ID + FS + "pkg1" + FS + "package-use.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg1" + FS + "package-use.html", + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-use.html", + "" + NL + "" + }, + {BUG_ID + FS + "pkg2" + FS + "package-use.html", + "" + }, + // Deprecated + {BUG_ID + FS + "deprecated-list.html", + "" + }, + {BUG_ID + FS + "deprecated-list.html", + "" + }, + // Constant values + {BUG_ID + FS + "constant-values.html", + "" + NL + "" + NL + + "" + }, + // Overview Summary + {BUG_ID + FS + "overview-summary.html", + "" + NL + "" + } + }; + private static final String[][] NEGATED_TEST = NO_TEST; + + /** + * The entry point of the test. + * @param args the array of command line arguments. + */ + public static void main(String[] args) { + TestHtmlTableTags tester = new TestHtmlTableTags(); + run(tester, ARGS, TABLE_TAGS_TEST, NEGATED_TEST); + tester.printSummary(); + } + + /** + * {@inheritDoc} + */ + public String getBugId() { + return BUG_ID; + } + + /** + * {@inheritDoc} + */ + public String getBugName() { + return getClass().getName(); + } +} diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg1/C1.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg1/C1.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,81 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package pkg1; + +import pkg2.*; + +/** + * A test class. + * + * @author Bhavesh Patel + */ +public class C1 implements I1 { + + /** + * Test field for class. + */ + public C2 field; + + /** + * Constant value. + */ + public static final String CONSTANT1 = "C1"; + + /** + * A test constructor. + */ + C1() { + } + + /** + * Method thats does some processing. + * + * @param param some parameter that is passed. + * @return a sample object. + */ + public C2 method(C2 param) { + return param; + } + + /** + * Method that is implemented. + * + * @param a some random value. + * @param b some random value. + */ + public void method1(int a, int b) { + } + + /** + * Another inherited method. + * @param c some value. + */ + public void method2(int c) { + } + + /** + * @deprecated don't use this anymore. + */ + public void deprecatedMethod() {} +} diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg1/I1.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg1/I1.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,48 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package pkg1; + +/** + * A sample interface used to test table tags. + * + * @author Bhavesh Patel + */ +public interface I1 { + + /** + * A test method. + * + * @param a blah. + * @param b blah. + */ + void method1(int a, int b); + + /** + * Another test method. + * + * @param c blah. + */ + void method2(int c); + +} diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg1/package-info.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg1/package-info.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,27 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +/** + * Test package 1 used to test table tags. + */ +package pkg1; diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/C2.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/C2.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,73 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package pkg2; + +import pkg1.*; + +/** + * Another test class. + * + * @author Bhavesh Patel + */ +public class C2 { + + /** + * A test field. + */ + public C1 field; + + /** + * @deprecated don't use this field anymore. + */ + public C1 dep_field; + + /** + * A sample enum. + */ + public static enum ModalExclusionType { + /** + * Test comment. + */ + NO_EXCLUDE, + /** + * Another comment. + */ + APPLICATION_EXCLUDE + }; + + /** + * A string constant. + */ + public static final String CONSTANT1 = "C2"; + + /** + * A sample method. + * + * @param param some parameter. + * @return a test object. + */ + public C1 method(C1 param) { + return param; + } +} diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/C3.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/C3.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,40 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package pkg2; + +import java.lang.annotation.*; + +/** + * Test Annotation class. + * + * @author Bhavesh Patel + */ +public @interface C3 { + /** + * Comment. + */ + String[] value(); +} diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/C4.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/C4.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,35 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Sun designates this + * particular file as subject to the "Classpath" exception as provided + * by Sun in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +package pkg2; + +import java.lang.annotation.*; + +/* + * A sample interface. + */ +public @interface C4 { + boolean value() default true; +} diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/package-info.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/com/sun/javadoc/testHtmlTableTags/pkg2/package-info.java Tue Mar 31 08:54:12 2009 -0700 @@ -0,0 +1,27 @@ +/* + * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, + * CA 95054 USA or visit www.sun.com if you need additional information or + * have any questions. + */ + +/** + * Test package 2 used to test table tags. + */ +package pkg2; diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java --- a/langtools/test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java Tue Mar 31 08:54:12 2009 -0700 @@ -58,7 +58,8 @@ "Coin>" }, //Check for enum constant section - {BUG_ID + FS + "pkg" + FS + "Coin.html", "Enum Constant Summary"}, + {BUG_ID + FS + "pkg" + FS + "Coin.html", ""}, //Detail for enum constant {BUG_ID + FS + "pkg" + FS + "Coin.html", "Dime"}, @@ -158,9 +159,11 @@ "public @interface AnnotationType"}, //Make sure member summary headings are correct. {BUG_ID + FS + "pkg" + FS + "AnnotationType.html", - "Required Element Summary"}, + ""}, {BUG_ID + FS + "pkg" + FS + "AnnotationType.html", - "Optional Element Summary"}, + ""}, //Make sure element detail heading is correct {BUG_ID + FS + "pkg" + FS + "AnnotationType.html", "Element Detail"}, @@ -286,39 +289,57 @@ //ClassUseTest1: {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html", "ParamTest<Foo>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", "ParamTest<Foo>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", "ParamTest<Foo>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", "<T extends ParamTest<Foo3>>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html", "<T extends ParamTest<Foo3>>" @@ -371,38 +414,61 @@ //ClassUseTest3: >> {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html", "<T extends ParamTest2<java.util.List<? extends Foo4>>>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", - "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", "" + "" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", "<T extends ParamTest2<java.util.List<? extends Foo4>>>" @@ -410,81 +476,147 @@ //Type parameters in constructor and method args {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", - "" + NL + - "" + NL + - "" + NL + - "" + NL + - "" + NL + + "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + NL + - "" + NL + + "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + "Packages with annotations of type " + + "AnnotationType" + NL + + "" + NL + "" + NL + "" + NL + "" + NL + + "" + NL + + "" }, {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "Classes in pkg with annotations of type AnnotationType" + NL + - "" + NL + - "" + NL + - "" + NL + - "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + NL + - "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + NL + - "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + NL + - "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + NL + "" + NL + "" + NL + + "" + NL + + "" + NL + - "" + NL + - "" + NL + "" + NL + "" + NL + + "" + NL + + ""} }; private static final String[][] NEGATED_TEST = NO_TEST; diff -r bad85507ed0c -r ad698eaaa812 langtools/test/tools/javap/T4884240.java --- a/langtools/test/tools/javap/T4884240.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/test/tools/javap/T4884240.java Tue Mar 31 08:54:12 2009 -0700 @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-15301 USA. + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, * CA 95054 USA or visit www.sun.com if you need additional information or
" + NL + + "Class Summary" + NL + + "Interface Summary" + NL + + "Enum Summary" + NL + + "Annotation Types Summary" + NL + + "Field Summary" + NL + + "Method Summary" + NL + + "Nested Class Summary" + NL + + "Constructor Summary" + NL + + "Enum Constant Summary" + NL + + "Required Element Summary" + NL + + "Optional Element Summary" + NL + + "Packages that use I1" + NL + + "Fields in pkg2 " + + "declared as " + + "C1" + NL + + "Methods in pkg2 " + + "with parameters of type C1" + NL + + "Fields in pkg1 " + + "declared as " + + "C2" + NL + + "Methods in pkg1 " + + "with parameters of type C2" + NL + + "Methods in pkg2 " + + "that return C2.ModalExclusionType" + NL + + "Packages that use " + + "pkg1" + NL + + "Classes in pkg1 " + + "used by pkg1" + NL + + "Packages that use " + + "pkg2" + NL + + "Classes in pkg2 " + + "used by pkg1" + NL + + "Deprecated Fields" + NL + + "Deprecated Methods" + NL + + "pkg1.C1" + NL + + "Packages
" + + "ClassDescription" + + "InterfaceDescription" + + "EnumDescription" + + "Annotation TypeDescription" + + "Modifier and TypeField and Description" + + "Modifier and TypeMethod and Description" + + "Modifier and TypeClass and Description" + + "Constructor and Description" + + "Enum Constant and Description" + + "Modifier and TypeRequired Element and Description" + + "Modifier and TypeOptional Element and Description" + + "PackageDescription" + + "Modifier and TypeField and Description" + + "Modifier and TypeMethod and Description" + + "Modifier and TypeField and Description" + + "Modifier and TypeMethod and Description" + + "PackageDescription" + + "Modifier and TypeMethod and Description" + + "PackageDescription" + + "Class and Description" + + "PackageDescription" + + "Class and Description" + + "Field and Description" + + "Method and Description" + + "Modifier and TypeConstant FieldValue" + + "PackageDescription
" + NL + + "Enum Constant Summary" + NL + + "Required Element Summary" + NL + + "Optional Element Summary
Classes in pkg2 with type parameters of type Foo
" + NL + + "Classes in pkg2" + + " with type parameters of type Foo
ClassUseTest1<T extends Foo & Foo2>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html", - "Methods in pkg2 with type parameters of type Foo
" + NL + + "Methods in pkg2" + + " with type parameters of type Foo
ClassUseTest1.method(T t)" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html", - "Fields in pkg2 with type parameters of type Foo
" + NL + + "Fields in pkg2" + + " with type parameters of type Foo
Fields in pkg2 declared as ParamTest
" + NL + + "Fields in pkg2" + + " declared as ParamTest
Classes in pkg2 with type parameters of type Foo2
" + NL + + "Classes in pkg2" + + " with type parameters of type Foo2
ClassUseTest1<T extends Foo & Foo2>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html", - "Methods in pkg2 with type parameters of type Foo2
" + NL + + "Methods in pkg2" + + " with type parameters of type Foo2
ClassUseTest1.method(T t)" @@ -326,44 +347,66 @@ //ClassUseTest2: > {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", - "Classes in pkg2 with type parameters of type ParamTest
" + NL + + "Classes in pkg2" + + " with type parameters of type ParamTest
ClassUseTest2<T extends ParamTest<Foo3>>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", - "Methods in pkg2 with type parameters of type ParamTest
" + NL + + "Methods in pkg2" + + " with type parameters of type ParamTest
ClassUseTest2.method(T t)" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html", - "Fields in pkg2 declared as ParamTest
" + NL + + "Fields in pkg2" + + " declared as ParamTest
Methods in pkg2 with type parameters of type ParamTest
" + NL + + "Methods in pkg2" + + " with type parameters of type ParamTest
Classes in pkg2 with type parameters of type Foo3
" + NL + + "Classes in pkg2" + + " with type parameters of type Foo3
ClassUseTest2<T extends ParamTest<Foo3>>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html", - "Methods in pkg2 with type parameters of type Foo3
" + NL + + "Methods in pkg2" + + " with type parameters of type Foo3
ClassUseTest2.method(T t)" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html", - "Methods in pkg2 that return types with arguments of type Foo3
" + NL + + "Methods in pkg2" + + " that return types with arguments of type " + + "" + + "Foo3
Classes in pkg2 with type parameters of type ParamTest2
" + NL + + "Classes in pkg2" + + " with type parameters of type " + + "" + + "ParamTest2
ClassUseTest3<T extends ParamTest2<java.util.List<? extends Foo4>>>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html", - "Methods in pkg2 with type parameters of type ParamTest2
" + NL + + "Methods in pkg2" + + " with type parameters of type " + + "" + + "ParamTest2
ClassUseTest3.method(T t)" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html", - "Methods in pkg2 with type parameters of type ParamTest2
" + NL + + "Methods in pkg2" + + " with type parameters of type " + + "" + + "ParamTest2
Classes in pkg2 with type parameters of type Foo4
" + NL + + "Classes in pkg2" + + " with type parameters of type " + + "" + + "Foo4
ClassUseTest3<T extends ParamTest2<java.util.List<? extends Foo4>>>" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", - "Methods in pkg2 with type parameters of type Foo4
" + NL + + "Methods in pkg2" + + " with type parameters of type Foo4
ClassUseTest3.method(T t)" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", - "Methods in pkg2 that return types with arguments of type Foo4
" + NL + + "Methods in pkg2" + + " that return types with arguments of type " + + "" + + "Foo4
Method parameters in pkg2 with type arguments of type Foo4
" + NL + - " voidClassUseTest3.method(java.util.Set<Foo4> p)" + "
" + NL + + "Method parameters in pkg2" + + " with type arguments of type Foo4
Modifier and Type" + + "Method and Description
" + NL + + " voidClassUseTest3." + + "" + + "method(java.util.Set<Foo4> p)" }, {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html", - "Constructor parameters in pkg2 with type arguments of type Foo4
ClassUseTest3(java.util.Set<Foo4> p)" + "
" + NL + + "Constructor parameters in " + + "pkg2 with type arguments of type Foo4
Constructor and Description" + + "
ClassUseTest3(java.util.Set<" + + "" + + "Foo4> p)" }, //================================= // Annotatation Type Usage //================================= {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "" + NL + - "Packages with annotations of type AnnotationType" + NL + - "
pkg
Package" + + "Description
pkg" + + "
" + NL + - " classAnnotationTypeUsage" + "Classes in pkg" + + " with annotations of type AnnotationType" + NL + + "
Modifier and Type" + + "Class and Description
" + NL + + " classAnnotationTypeUsage" }, {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "Fields in pkg with annotations of type AnnotationType" + NL + - "
" + NL + - " intAnnotationTypeUsage.field" + "Fields in pkg" + + " with annotations of type AnnotationType" + NL + + "
Modifier and Type" + + "Field and Description
" + NL + + " intAnnotationTypeUsage." + + "field" + + "" }, {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "Methods in pkg with annotations of type AnnotationType" + NL + - "
" + NL + - " voidAnnotationTypeUsage.method()" + "Methods in pkg" + + " with annotations of type AnnotationType" + NL + + "
Modifier and Type" + + "Method and Description
" + NL + + " voidAnnotationTypeUsage." + + "" + + "method()" }, {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "Method parameters in pkg with annotations of type AnnotationType" + NL + - "
" + NL + - " voidAnnotationTypeUsage.methodWithParams(int documented," + NL + - " int undocmented)" + "Method parameters in pkg" + + " with annotations of type AnnotationType" + NL + + "
Modifier and Type" + + "Method and Description
" + NL + + " voidAnnotationTypeUsage." + + "methodWithParams(int documented," + NL + + " int undocmented)" }, {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "Constructors in pkg with annotations of type AnnotationType" + NL + - "
AnnotationTypeUsage()" + "Constructors in pkg" + + " with annotations of type AnnotationType" + NL + + "
Constructor and Description" + + "
" + + "AnnotationTypeUsage()" }, {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html", - "Constructor parameters in pkg with annotations of type AnnotationType" + NL + - "
AnnotationTypeUsage(int documented," + NL + - " int undocmented)" + "Constructor parameters in pkg" + + " with annotations of type AnnotationType" + NL + + "
Constructor and Description" + + "
" + + "AnnotationTypeUsage(int documented," + NL + + " int undocmented)" }, //================================= diff -r bad85507ed0c -r ad698eaaa812 langtools/test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java --- a/langtools/test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java Fri Mar 27 14:11:53 2009 -0700 +++ b/langtools/test/com/sun/javadoc/testSummaryHeading/TestSummaryHeading.java Tue Mar 31 08:54:12 2009 -0700 @@ -46,7 +46,8 @@ //Input for string search tests. private static final String[][] TEST = { - {BUG_ID + FS + "C.html", "Method Summary"} + {BUG_ID + FS + "C.html", "
" + NL + + "Method Summary