1.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java Tue Nov 30 09:38:48 2010 -0800 1.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/AnnotationTypeWriter.java Wed Dec 01 11:02:38 2010 -0800 1.3 @@ -37,43 +37,122 @@ 1.4 * Do not use it as an API. 1.5 * 1.6 * @author Jamie Ho 1.7 + * @author Bhavesh Patel (Modified) 1.8 * @since 1.5 1.9 */ 1.10 1.11 public interface AnnotationTypeWriter { 1.12 1.13 /** 1.14 - * Write the header of the page. 1.15 - * @param header the header to write. 1.16 + * Get the header of the page. 1.17 + * 1.18 + * @param header the header string to write 1.19 + * @return a content tree for the header documentation 1.20 */ 1.21 - public void writeHeader(String header); 1.22 + public Content getHeader(String header); 1.23 1.24 /** 1.25 - * Write the signature of the current annotation type. 1.26 + * Get the annotation content header. 1.27 * 1.28 - * @param modifiers the modifiers for the signature. 1.29 + * @return annotation content header that needs to be added to the documentation 1.30 */ 1.31 - public void writeAnnotationTypeSignature(String modifiers); 1.32 + public Content getAnnotationContentHeader(); 1.33 + 1.34 + /** 1.35 + * Get the annotation information tree header. 1.36 + * 1.37 + * @return annotation information tree header that needs to be added to the documentation 1.38 + */ 1.39 + public Content getAnnotationInfoTreeHeader(); 1.40 + 1.41 + /** 1.42 + * Get the annotation information. 1.43 + * 1.44 + * @param annotationInfoTree content tree containing the annotation information 1.45 + * @return a content tree for the annotation 1.46 + */ 1.47 + public Content getAnnotationInfo(Content annotationInfoTree); 1.48 + 1.49 + /** 1.50 + * Add the signature of the current annotation type. 1.51 + * 1.52 + * @param modifiers the modifiers for the signature 1.53 + * @param annotationInfoTree the annotation content tree to which the signature will be added 1.54 + */ 1.55 + public void addAnnotationTypeSignature(String modifiers, Content annotationInfoTree); 1.56 1.57 /** 1.58 * Build the annotation type description. 1.59 + * 1.60 + * @param annotationInfoTree content tree to which the description will be added 1.61 */ 1.62 - public void writeAnnotationTypeDescription(); 1.63 + public void addAnnotationTypeDescription(Content annotationInfoTree); 1.64 1.65 /** 1.66 - * Write the tag information for the current annotation type. 1.67 + * Add the tag information for the current annotation type. 1.68 + * 1.69 + * @param annotationInfoTree content tree to which the tag information will be added 1.70 */ 1.71 - public void writeAnnotationTypeTagInfo(); 1.72 + public void addAnnotationTypeTagInfo(Content annotationInfoTree); 1.73 1.74 /** 1.75 - * If this annotation type is deprecated, write the appropriate information. 1.76 + * If this annotation is deprecated, add the appropriate information. 1.77 + * 1.78 + * @param annotationInfoTree content tree to which the deprecated information will be added 1.79 */ 1.80 - public void writeAnnotationTypeDeprecationInfo(); 1.81 + public void addAnnotationTypeDeprecationInfo (Content annotationInfoTree); 1.82 1.83 /** 1.84 - * Write the footer of the page. 1.85 + * Add the annotation type details marker. 1.86 + * 1.87 + * @param memberDetails the content tree representing member details marker 1.88 */ 1.89 - public void writeFooter(); 1.90 + public void addAnnotationDetailsMarker(Content memberDetails); 1.91 + 1.92 + /** 1.93 + * Get the member tree header for the annotation type. 1.94 + * 1.95 + * @return a content tree for the member tree header 1.96 + */ 1.97 + public Content getMemberTreeHeader(); 1.98 + 1.99 + /** 1.100 + * Get the member tree. 1.101 + * 1.102 + * @param memberTree the content tree that will be modified and returned 1.103 + * @return a content tree for the member 1.104 + */ 1.105 + public Content getMemberTree(Content memberTree); 1.106 + 1.107 + /** 1.108 + * Get the member summary tree. 1.109 + * 1.110 + * @param memberTree the content tree that will be used to build the summary tree 1.111 + * @return a content tree for the member summary 1.112 + */ 1.113 + public Content getMemberSummaryTree(Content memberTree); 1.114 + 1.115 + /** 1.116 + * Get the member details tree. 1.117 + * 1.118 + * @param memberTree the content tree that will be used to build the details tree 1.119 + * @return a content tree for the member details 1.120 + */ 1.121 + public Content getMemberDetailsTree(Content memberTree); 1.122 + 1.123 + /** 1.124 + * Add the footer of the page. 1.125 + * 1.126 + * @param contentTree content tree to which the footer will be added 1.127 + */ 1.128 + public void addFooter(Content contentTree); 1.129 + 1.130 + /** 1.131 + * Print the document. 1.132 + * 1.133 + * @param contentTree content tree that will be printed as a document 1.134 + */ 1.135 + public void printDocument(Content contentTree); 1.136 1.137 /** 1.138 * Close the writer. 1.139 @@ -86,10 +165,4 @@ 1.140 * @return the AnnotationTypeDoc being documented. 1.141 */ 1.142 public AnnotationTypeDoc getAnnotationTypeDoc(); 1.143 - 1.144 - /** 1.145 - * Perform any operations that are necessary when the member summary 1.146 - * finished building. 1.147 - */ 1.148 - public void completeMemberSummaryBuild(); 1.149 }