/** {@inheritDoc} */ public Content getTagletOutput(Tag tag, TagletWriter writer) { ArrayList inlineTags = new ArrayList(); inlineTags.add(new TextTag(tag.holder(), "<b>")); inlineTags.addAll(Arrays.asList(tag.inlineTags())); inlineTags.add(new TextTag(tag.holder(), "</b>")); return writer.commentTagsToOutput(tag, (Tag[]) inlineTags.toArray(new Tag[] {})); }
/** Copy the doc files for the current ClassDoc if necessary. */ private void copyDocFiles() { PackageDoc containingPackage = annotationTypeDoc.containingPackage(); if ((configuration.packages == null || Arrays.binarySearch(configuration.packages, containingPackage) < 0) && !containingPackagesSeen.contains(containingPackage.name())) { // Only copy doc files dir if the containing package is not // documented AND if we have not documented a class from the same // package already. Otherwise, we are making duplicate copies. Util.copyDocFiles( configuration, Util.getPackageSourcePath(configuration, annotationTypeDoc.containingPackage()) + DirectoryManager.getDirectoryPath(annotationTypeDoc.containingPackage()) + File.separator, DocletConstants.DOC_FILES_DIR_NAME, true); containingPackagesSeen.add(containingPackage.name()); } }
/** * Build the class serialized form. * * @param node the XML element that specifies which components to document * @param packageSerializedTree content tree to which the documentation will be added */ public void buildClassSerializedForm(XMLNode node, Content packageSerializedTree) { Content classSerializedTree = writer.getClassSerializedHeader(); ClassDoc[] classes = currentPackage.allClasses(false); Arrays.sort(classes); for (int j = 0; j < classes.length; j++) { currentClass = classes[j]; fieldWriter = writer.getSerialFieldWriter(currentClass); methodWriter = writer.getSerialMethodWriter(currentClass); if (currentClass.isClass() && currentClass.isSerializable()) { if (!serialClassInclude(currentClass)) { continue; } Content classTree = writer.getClassHeader(currentClass); buildChildren(node, classTree); classSerializedTree.addContent(classTree); } } packageSerializedTree.addContent(classSerializedTree); }
/** * Build the serial field tags information. * * @param serializableFieldsTree content tree to which the documentation will be added */ public void buildSerialFieldTagsInfo(Content serializableFieldsTree) { if (configuration.nocomment) { return; } FieldDoc field = (FieldDoc) currentMember; // Process Serializable Fields specified as array of // ObjectStreamFields. Print a member for each serialField tag. // (There should be one serialField tag per ObjectStreamField // element.) SerialFieldTag[] tags = field.serialFieldTags(); Arrays.sort(tags); int tagsLength = tags.length; for (int i = 0; i < tagsLength; i++) { if (tags[i].fieldName() == null || tags[i].fieldType() == null) // ignore malformed @serialField tags continue; Content fieldsContentTree = fieldWriter.getFieldsContentHeader((i == tagsLength - 1)); fieldWriter.addMemberHeader( tags[i].fieldTypeDoc(), tags[i].fieldType(), "", tags[i].fieldName(), fieldsContentTree); fieldWriter.addMemberDescription(tags[i], fieldsContentTree); serializableFieldsTree.addContent(fieldsContentTree); } }