/**
  * Build the member summary contents of the page.
  *
  * @param node the XML element that specifies which components to document
  * @param classContentTree the content tree to which the documentation will be added
  */
 public void buildMemberSummary(XMLNode node, Content classContentTree) throws Exception {
   Content memberSummaryTree = writer.getMemberTreeHeader();
   configuration
       .getBuilderFactory()
       .getMemberSummaryBuilder(writer)
       .buildChildren(node, memberSummaryTree);
   classContentTree.addContent(writer.getMemberSummaryTree(memberSummaryTree));
 }
 /**
  * Handles the {@literal <ClassDoc>} tag.
  *
  * @param node the XML element that specifies which components to document
  * @param contentTree the content tree to which the documentation will be added
  */
 public void buildClassDoc(XMLNode node, Content contentTree) throws Exception {
   String key;
   if (isInterface) {
     key = "doclet.Interface";
   } else if (isEnum) {
     key = "doclet.Enum";
   } else {
     key = "doclet.Class";
   }
   contentTree = writer.getHeader(configuration.getText(key) + " " + classDoc.name());
   Content classContentTree = writer.getClassContentHeader();
   buildChildren(node, classContentTree);
   contentTree.addContent(classContentTree);
   writer.addFooter(contentTree);
   writer.printDocument(contentTree);
   writer.close();
   copyDocFiles();
 }
 /**
  * Build the signature of the current class.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildClassSignature(XMLNode node, Content classInfoTree) {
   StringBuilder modifiers = new StringBuilder(classDoc.modifiers());
   modifiers.append(modifiers.length() == 0 ? "" : " ");
   if (isEnum) {
     modifiers.append("enum ");
     int index;
     if ((index = modifiers.indexOf("abstract")) >= 0) {
       modifiers.delete(index, index + "abstract".length());
       modifiers = new StringBuilder(Util.replaceText(modifiers.toString(), "  ", " "));
     }
     if ((index = modifiers.indexOf("final")) >= 0) {
       modifiers.delete(index, index + "final".length());
       modifiers = new StringBuilder(Util.replaceText(modifiers.toString(), "  ", " "));
     }
     // } else if (classDoc.isAnnotationType()) {
     // modifiers.append("@interface ");
   } else if (!isInterface) {
     modifiers.append("class ");
   }
   writer.addClassSignature(modifiers.toString(), classInfoTree);
 }
 /**
  * Build the member details contents of the page.
  *
  * @param node the XML element that specifies which components to document
  * @param classContentTree the content tree to which the documentation will be added
  */
 public void buildMemberDetails(XMLNode node, Content classContentTree) {
   Content memberDetailsTree = writer.getMemberTreeHeader();
   buildChildren(node, memberDetailsTree);
   classContentTree.addContent(writer.getMemberDetailsTree(memberDetailsTree));
 }
 /**
  * Build the tag information for the current class.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildClassTagInfo(XMLNode node, Content classInfoTree) {
   writer.addClassTagInfo(classInfoTree);
 }
 /**
  * Build the class description.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildClassDescription(XMLNode node, Content classInfoTree) {
   writer.addClassDescription(classInfoTree);
 }
 /**
  * If this class is deprecated, build the appropriate information.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildDeprecationInfo(XMLNode node, Content classInfoTree) {
   writer.addClassDeprecationInfo(classInfoTree);
 }
 /**
  * If this is an functional interface, display appropriate message.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildFunctionalInterfaceInfo(XMLNode node, Content classInfoTree) {
   writer.addFunctionalInterfaceInfo(classInfoTree);
 }
 /**
  * If this is an interface, list all classes that implement this interface.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildInterfaceUsageInfo(XMLNode node, Content classInfoTree) {
   writer.addInterfaceUsageInfo(classInfoTree);
 }
 /**
  * List all the interfaces that extend this one.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildSubInterfacesInfo(XMLNode node, Content classInfoTree) {
   writer.addSubInterfacesInfo(classInfoTree);
 }
 /**
  * If this is a class, list all interfaces implemented by this class.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildImplementedInterfacesInfo(XMLNode node, Content classInfoTree) {
   writer.addImplementedInterfacesInfo(classInfoTree);
 }
 /**
  * Build the typeparameters of this class.
  *
  * @param node the XML element that specifies which components to document
  * @param classInfoTree the content tree to which the documentation will be added
  */
 public void buildTypeParamInfo(XMLNode node, Content classInfoTree) {
   writer.addTypeParamInfo(classInfoTree);
 }
 /**
  * Build the class information tree documentation.
  *
  * @param node the XML element that specifies which components to document
  * @param classContentTree the content tree to which the documentation will be added
  */
 public void buildClassInfo(XMLNode node, Content classContentTree) {
   Content classInfoTree = writer.getClassInfoTreeHeader();
   buildChildren(node, classInfoTree);
   classContentTree.addContent(writer.getClassInfo(classInfoTree));
 }
 /**
  * Build the class tree documentation.
  *
  * @param node the XML element that specifies which components to document
  * @param classContentTree the content tree to which the documentation will be added
  */
 public void buildClassTree(XMLNode node, Content classContentTree) {
   writer.addClassTree(classContentTree);
 }