--- old/test/tools/javadoc/sampleapi/lib/sampleapi/generator/Documentifier.java Fri Jan 22 12:30:38 2016 +++ /dev/null Fri Jan 22 12:30:38 2016 @@ -1,124 +0,0 @@ -/* - * Copyright (c) 2015, Oracle and/or its affiliates. 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ - -package sampleapi.generator; - -import java.util.ArrayList; -import java.util.Set; -import javax.lang.model.element.Modifier; - -import com.sun.tools.javac.util.Context; -import com.sun.tools.javac.tree.JCTree; -import com.sun.tools.javac.tree.JCTree.*; -import com.sun.tools.javac.tree.DocCommentTable; -import com.sun.tools.javac.parser.ScannerFactory; -import com.sun.tools.javac.parser.Scanner; -import com.sun.tools.javac.parser.Tokens.Token; -import com.sun.tools.javac.parser.Tokens.Comment; -import com.sun.tools.javac.parser.Tokens.Comment.CommentStyle; -import com.sun.source.tree.Tree.Kind; - -import sampleapi.util.*; - -class Documentifier { - - static Documentifier instance; - - final DocCommentGenerator docGen; - final ScannerFactory scanners; - - private Documentifier(Context context) { - docGen = new DocCommentGenerator(); - scanners = ScannerFactory.instance(context); - } - - public static Documentifier instance(Context context) { - if (instance == null) - instance = new Documentifier(context); - return instance; - } - - private DocCommentTable curDocComments; - - public void documentify(JCCompilationUnit topLevel, boolean isFxStyle) { - JCClassDecl base = (JCClassDecl)topLevel.getTypeDecls().get(0); - curDocComments = new PoorDocCommentTable(); - documentifyBase(base, true, isFxStyle); - topLevel.docComments = curDocComments; - } - - private void documentifyBase(JCClassDecl base, boolean isTopLevel, boolean isFxStyle) { - // add doc comment to class itself - Comment comm = comment(docGen.getBaseComment(base, isTopLevel)); - curDocComments.putComment(base, comm); - - // add doc comments to members - for (JCTree member : base.getMembers()) { - switch (member.getTag()) { - case VARDEF: - documentifyField(base, (JCVariableDecl)member, isFxStyle); - break; - case METHODDEF: - documentifyMethod(base, (JCMethodDecl)member, isFxStyle); - break; - case CLASSDEF: - documentifyBase((JCClassDecl)member, false, isFxStyle); - break; - } - } - } - - private void documentifyField(JCClassDecl base, JCVariableDecl field, boolean isFxStyle) { - Kind baseKind = base.getKind(); - Set fieldMods = field.getModifiers().getFlags(); - String doc = (baseKind == Kind.ENUM - && fieldMods.contains(Modifier.PUBLIC) - && fieldMods.contains(Modifier.STATIC) - && fieldMods.contains(Modifier.FINAL)) ? - docGen.getConstComment() : - docGen.getFieldComment(base, field, isFxStyle); - Comment comm = comment(doc); - curDocComments.putComment(field, comm); - } - - private void documentifyMethod(JCClassDecl base, JCMethodDecl method, boolean isFxStyle) { - Comment comm = comment(docGen.getMethodComment(base, method, isFxStyle)); - curDocComments.putComment(method, comm); - } - - private Comment comment(String docString) { - StringBuilder docComment = new StringBuilder() - .append("/**") - .append(docString) - .append("*/"); - Scanner scanner = scanners.newScanner(docComment, true); - scanner.nextToken(); - Token token = scanner.token(); - return token.comment(CommentStyle.JAVADOC); - } - - // provide package comment data ONLY - public DocCommentGenerator getDocGenerator() { - return docGen; - } -} --- /dev/null Fri Jan 22 12:30:38 2016 +++ new/test/jdk/javadoc/tool/sampleapi/lib/sampleapi/generator/Documentifier.java Fri Jan 22 12:30:38 2016 @@ -0,0 +1,124 @@ +/* + * Copyright (c) 2015, Oracle and/or its affiliates. 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package sampleapi.generator; + +import java.util.ArrayList; +import java.util.Set; +import javax.lang.model.element.Modifier; + +import com.sun.tools.javac.util.Context; +import com.sun.tools.javac.tree.JCTree; +import com.sun.tools.javac.tree.JCTree.*; +import com.sun.tools.javac.tree.DocCommentTable; +import com.sun.tools.javac.parser.ScannerFactory; +import com.sun.tools.javac.parser.Scanner; +import com.sun.tools.javac.parser.Tokens.Token; +import com.sun.tools.javac.parser.Tokens.Comment; +import com.sun.tools.javac.parser.Tokens.Comment.CommentStyle; +import com.sun.source.tree.Tree.Kind; + +import sampleapi.util.*; + +class Documentifier { + + static Documentifier instance; + + final DocCommentGenerator docGen; + final ScannerFactory scanners; + + private Documentifier(Context context) { + docGen = new DocCommentGenerator(); + scanners = ScannerFactory.instance(context); + } + + public static Documentifier instance(Context context) { + if (instance == null) + instance = new Documentifier(context); + return instance; + } + + private DocCommentTable curDocComments; + + public void documentify(JCCompilationUnit topLevel, boolean isFxStyle) { + JCClassDecl base = (JCClassDecl)topLevel.getTypeDecls().get(0); + curDocComments = new PoorDocCommentTable(); + documentifyBase(base, true, isFxStyle); + topLevel.docComments = curDocComments; + } + + private void documentifyBase(JCClassDecl base, boolean isTopLevel, boolean isFxStyle) { + // add doc comment to class itself + Comment comm = comment(docGen.getBaseComment(base, isTopLevel)); + curDocComments.putComment(base, comm); + + // add doc comments to members + for (JCTree member : base.getMembers()) { + switch (member.getTag()) { + case VARDEF: + documentifyField(base, (JCVariableDecl)member, isFxStyle); + break; + case METHODDEF: + documentifyMethod(base, (JCMethodDecl)member, isFxStyle); + break; + case CLASSDEF: + documentifyBase((JCClassDecl)member, false, isFxStyle); + break; + } + } + } + + private void documentifyField(JCClassDecl base, JCVariableDecl field, boolean isFxStyle) { + Kind baseKind = base.getKind(); + Set fieldMods = field.getModifiers().getFlags(); + String doc = (baseKind == Kind.ENUM + && fieldMods.contains(Modifier.PUBLIC) + && fieldMods.contains(Modifier.STATIC) + && fieldMods.contains(Modifier.FINAL)) ? + docGen.getConstComment() : + docGen.getFieldComment(base, field, isFxStyle); + Comment comm = comment(doc); + curDocComments.putComment(field, comm); + } + + private void documentifyMethod(JCClassDecl base, JCMethodDecl method, boolean isFxStyle) { + Comment comm = comment(docGen.getMethodComment(base, method, isFxStyle)); + curDocComments.putComment(method, comm); + } + + private Comment comment(String docString) { + StringBuilder docComment = new StringBuilder() + .append("/**") + .append(docString) + .append("*/"); + Scanner scanner = scanners.newScanner(docComment, true); + scanner.nextToken(); + Token token = scanner.token(); + return token.comment(CommentStyle.JAVADOC); + } + + // provide package comment data ONLY + public DocCommentGenerator getDocGenerator() { + return docGen; + } +}