< prev index next >

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeWriterImpl.java

Print this page
rev 47482 : 8190295: Introduce a new Table builder class
rev 47486 : 8190821: Introduce a new Links builder class


  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package jdk.javadoc.internal.doclets.formats.html;
  27 
  28 import java.util.List;
  29 
  30 import javax.lang.model.element.ModuleElement;
  31 import javax.lang.model.element.PackageElement;
  32 import javax.lang.model.element.TypeElement;
  33 import javax.lang.model.type.TypeMirror;
  34 
  35 import com.sun.source.doctree.DocTree;
  36 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlConstants;
  37 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
  38 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
  39 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;

  40 import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
  41 import jdk.javadoc.internal.doclets.toolkit.AnnotationTypeWriter;
  42 import jdk.javadoc.internal.doclets.toolkit.Content;
  43 import jdk.javadoc.internal.doclets.toolkit.builders.MemberSummaryBuilder;
  44 import jdk.javadoc.internal.doclets.toolkit.util.CommentHelper;
  45 import jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException;
  46 import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
  47 import jdk.javadoc.internal.doclets.toolkit.util.DocPaths;
  48 import jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap;
  49 
  50 /**
  51  * Generate the Class Information Page.
  52  *
  53  *  <p><b>This is NOT part of any supported API.
  54  *  If you write code that depends on this, you do so at your own risk.
  55  *  This code and its internal interfaces are subject to change or
  56  *  deletion without notice.</b>
  57  *
  58  * @see java.util.Collections
  59  * @see java.util.List


  91     /**
  92      * Get the module link.
  93      *
  94      * @return a content tree for the module link
  95      */
  96     @Override
  97     protected Content getNavLinkModule() {
  98         Content linkContent = getModuleLink(utils.elementUtils.getModuleOf(annotationType),
  99                 contents.moduleLabel);
 100         Content li = HtmlTree.LI(linkContent);
 101         return li;
 102     }
 103 
 104     /**
 105      * Get this package link.
 106      *
 107      * @return a content tree for the package link
 108      */
 109     @Override
 110     protected Content getNavLinkPackage() {
 111         Content linkContent = getHyperLink(DocPaths.PACKAGE_SUMMARY,
 112                 contents.packageLabel);
 113         Content li = HtmlTree.LI(linkContent);
 114         return li;
 115     }
 116 
 117     /**
 118      * Get the class link.
 119      *
 120      * @return a content tree for the class link
 121      */
 122     @Override
 123     protected Content getNavLinkClass() {
 124         Content li = HtmlTree.LI(HtmlStyle.navBarCell1Rev, contents.classLabel);
 125         return li;
 126     }
 127 
 128     /**
 129      * Get the class use link.
 130      *
 131      * @return a content tree for the class use link
 132      */
 133     @Override
 134     protected Content getNavLinkClassUse() {
 135         Content linkContent = getHyperLink(DocPaths.CLASS_USE.resolve(filename), contents.useLabel);
 136         Content li = HtmlTree.LI(linkContent);
 137         return li;
 138     }
 139 
 140     /**
 141      * Get link to previous class.
 142      *
 143      * @return a content tree for the previous class link
 144      */
 145     @Override
 146     public Content getNavLinkPrevious() {
 147         Content li;
 148         if (prev != null) {
 149             Content prevLink = getLink(new LinkInfoImpl(configuration,
 150                     LinkInfoImpl.Kind.CLASS, utils.asTypeElement(prev))
 151                     .label(contents.prevClassLabel).strong(true));
 152             li = HtmlTree.LI(prevLink);
 153         }
 154         else
 155             li = HtmlTree.LI(contents.prevClassLabel);


 329         if (utils.isDeprecated(annotationType)) {
 330             CommentHelper ch = utils.getCommentHelper(annotationType);
 331             Content deprLabel = HtmlTree.SPAN(HtmlStyle.deprecatedLabel, getDeprecatedPhrase(annotationType));
 332             Content div = HtmlTree.DIV(HtmlStyle.deprecationBlock, deprLabel);
 333             if (!deprs.isEmpty()) {
 334 
 335                 List<? extends DocTree> commentTags = ch.getDescription(configuration, deprs.get(0));
 336                 if (!commentTags.isEmpty()) {
 337                     addInlineDeprecatedComment(annotationType, deprs.get(0), div);
 338                 }
 339             }
 340             annotationInfoTree.addContent(div);
 341         }
 342     }
 343 
 344     /**
 345      * {@inheritDoc}
 346      */
 347     @Override
 348     protected Content getNavLinkTree() {
 349         Content treeLinkContent = getHyperLink(DocPaths.PACKAGE_TREE,
 350                 contents.treeLabel, "", "");
 351         Content li = HtmlTree.LI(treeLinkContent);
 352         return li;
 353     }
 354 
 355     /**
 356      * Add summary details to the navigation bar.
 357      *
 358      * @param subDiv the content tree to which the summary detail links will be added
 359      */
 360     @Override
 361     protected void addSummaryDetailLinks(Content subDiv) {
 362         Content div = HtmlTree.DIV(getNavSummaryLinks());
 363         div.addContent(getNavDetailLinks());
 364         subDiv.addContent(div);
 365     }
 366 
 367     /**
 368      * Get summary links for navigation bar.
 369      *




  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package jdk.javadoc.internal.doclets.formats.html;
  27 
  28 import java.util.List;
  29 
  30 import javax.lang.model.element.ModuleElement;
  31 import javax.lang.model.element.PackageElement;
  32 import javax.lang.model.element.TypeElement;
  33 import javax.lang.model.type.TypeMirror;
  34 
  35 import com.sun.source.doctree.DocTree;
  36 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlConstants;
  37 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
  38 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
  39 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
  40 import jdk.javadoc.internal.doclets.formats.html.markup.Links;
  41 import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
  42 import jdk.javadoc.internal.doclets.toolkit.AnnotationTypeWriter;
  43 import jdk.javadoc.internal.doclets.toolkit.Content;
  44 import jdk.javadoc.internal.doclets.toolkit.builders.MemberSummaryBuilder;
  45 import jdk.javadoc.internal.doclets.toolkit.util.CommentHelper;
  46 import jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException;
  47 import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
  48 import jdk.javadoc.internal.doclets.toolkit.util.DocPaths;
  49 import jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap;
  50 
  51 /**
  52  * Generate the Class Information Page.
  53  *
  54  *  <p><b>This is NOT part of any supported API.
  55  *  If you write code that depends on this, you do so at your own risk.
  56  *  This code and its internal interfaces are subject to change or
  57  *  deletion without notice.</b>
  58  *
  59  * @see java.util.Collections
  60  * @see java.util.List


  92     /**
  93      * Get the module link.
  94      *
  95      * @return a content tree for the module link
  96      */
  97     @Override
  98     protected Content getNavLinkModule() {
  99         Content linkContent = getModuleLink(utils.elementUtils.getModuleOf(annotationType),
 100                 contents.moduleLabel);
 101         Content li = HtmlTree.LI(linkContent);
 102         return li;
 103     }
 104 
 105     /**
 106      * Get this package link.
 107      *
 108      * @return a content tree for the package link
 109      */
 110     @Override
 111     protected Content getNavLinkPackage() {
 112         Content linkContent = Links.createLink(DocPaths.PACKAGE_SUMMARY,
 113                 contents.packageLabel);
 114         Content li = HtmlTree.LI(linkContent);
 115         return li;
 116     }
 117 
 118     /**
 119      * Get the class link.
 120      *
 121      * @return a content tree for the class link
 122      */
 123     @Override
 124     protected Content getNavLinkClass() {
 125         Content li = HtmlTree.LI(HtmlStyle.navBarCell1Rev, contents.classLabel);
 126         return li;
 127     }
 128 
 129     /**
 130      * Get the class use link.
 131      *
 132      * @return a content tree for the class use link
 133      */
 134     @Override
 135     protected Content getNavLinkClassUse() {
 136         Content linkContent = Links.createLink(DocPaths.CLASS_USE.resolve(filename), contents.useLabel);
 137         Content li = HtmlTree.LI(linkContent);
 138         return li;
 139     }
 140 
 141     /**
 142      * Get link to previous class.
 143      *
 144      * @return a content tree for the previous class link
 145      */
 146     @Override
 147     public Content getNavLinkPrevious() {
 148         Content li;
 149         if (prev != null) {
 150             Content prevLink = getLink(new LinkInfoImpl(configuration,
 151                     LinkInfoImpl.Kind.CLASS, utils.asTypeElement(prev))
 152                     .label(contents.prevClassLabel).strong(true));
 153             li = HtmlTree.LI(prevLink);
 154         }
 155         else
 156             li = HtmlTree.LI(contents.prevClassLabel);


 330         if (utils.isDeprecated(annotationType)) {
 331             CommentHelper ch = utils.getCommentHelper(annotationType);
 332             Content deprLabel = HtmlTree.SPAN(HtmlStyle.deprecatedLabel, getDeprecatedPhrase(annotationType));
 333             Content div = HtmlTree.DIV(HtmlStyle.deprecationBlock, deprLabel);
 334             if (!deprs.isEmpty()) {
 335 
 336                 List<? extends DocTree> commentTags = ch.getDescription(configuration, deprs.get(0));
 337                 if (!commentTags.isEmpty()) {
 338                     addInlineDeprecatedComment(annotationType, deprs.get(0), div);
 339                 }
 340             }
 341             annotationInfoTree.addContent(div);
 342         }
 343     }
 344 
 345     /**
 346      * {@inheritDoc}
 347      */
 348     @Override
 349     protected Content getNavLinkTree() {
 350         Content treeLinkContent = Links.createLink(DocPaths.PACKAGE_TREE,
 351                 contents.treeLabel, "", "");
 352         Content li = HtmlTree.LI(treeLinkContent);
 353         return li;
 354     }
 355 
 356     /**
 357      * Add summary details to the navigation bar.
 358      *
 359      * @param subDiv the content tree to which the summary detail links will be added
 360      */
 361     @Override
 362     protected void addSummaryDetailLinks(Content subDiv) {
 363         Content div = HtmlTree.DIV(getNavSummaryLinks());
 364         div.addContent(getNavDetailLinks());
 365         subDiv.addContent(div);
 366     }
 367 
 368     /**
 369      * Get summary links for navigation bar.
 370      *


< prev index next >