/** * Collects references made in Javadoc comments. * @param ast node to inspect for Javadoc */ private void collectReferencesFromJavadoc(DetailAST ast) { final FileContents contents = getFileContents(); final int lineNo = ast.getLineNo(); final TextBlock textBlock = contents.getJavadocBefore(lineNo); if (textBlock != null) { referenced.addAll(collectReferencesFromJavadoc(textBlock)); } }
@Override public void visitToken(DetailAST ast) { if (shouldCheck(ast)) { final FileContents contents = getFileContents(); final TextBlock textBlock = contents.getJavadocBefore(ast.getLineNo()); if (textBlock == null) { log(ast, MSG_JAVADOC_MISSING); } } }
@Override public void visitToken(DetailAST ast) { if (shouldCheck(ast)) { final FileContents contents = getFileContents(); // Need to start searching for the comment before the annotations // that may exist. Even if annotations are not defined on the // package, the ANNOTATIONS AST is defined. final TextBlock textBlock = contents.getJavadocBefore(ast.getFirstChild().getLineNo()); checkComment(ast, textBlock); } }
@Override public void visitToken(DetailAST ast) { final FileContents contents = getFileContents(); final int lineNo = ast.getLineNo(); final TextBlock cmt = contents.getJavadocBefore(lineNo); if (cmt == null) { log(lineNo, MSG_MISSING_TAG, tag); } else { checkTag(lineNo, cmt.getText()); } }
@Test public void testGetJavadocBefore() { final FileContents fileContents = new FileContents( new FileText(new File("filename"), Collections.singletonList(" "))); final Map<Integer, TextBlock> javadoc = new HashMap<>(); javadoc.put(0, new Comment(new String[] {"// "}, 2, 1, 2)); Whitebox.setInternalState(fileContents, "javadocComments", javadoc); final TextBlock javadocBefore = fileContents.getJavadocBefore(2); assertEquals("Invalid before javadoc", new Comment(new String[] {"// "}, 2, 1, 2).toString(), javadocBefore.toString()); }
@Override public void visitToken(final DetailAST ast) { final TextBlock javadoc = getFileContents().getJavadocBefore(ast.getLineNo()); final boolean containsAnnotation = AnnotationUtil.containsAnnotation(ast, DEPRECATED) || AnnotationUtil.containsAnnotation(ast, FQ_DEPRECATED); final boolean containsJavadocTag = containsJavadocTag(javadoc); if (containsAnnotation ^ containsJavadocTag && !(skipNoJavadoc && javadoc == null)) { log(ast.getLineNo(), MSG_KEY_ANNOTATION_MISSING_DEPRECATED); } }
@Test public void testReportJavadocComment() { final FileContents fileContents = new FileContents( new FileText(new File("filename"), Collections.singletonList(" /** */ "))); fileContents.reportCComment(1, 2, 1, 6); final TextBlock comment = fileContents.getJavadocBefore(2); assertEquals("Invalid comment", new Comment(new String[] {"/** *"}, 2, 1, 6).toString(), comment.toString()); }
@Override protected final void processAST(DetailAST ast) { final Scope theScope = calculateScope(ast); if (shouldCheck(ast, theScope)) { final FileContents contents = getFileContents(); final TextBlock textBlock = contents.getJavadocBefore(ast.getLineNo()); if (textBlock == null) { if (!isMissingJavadocAllowed(ast)) { log(ast, MSG_JAVADOC_MISSING); } } else { checkComment(ast, textBlock); } } }
@Test public void testReportJavadocComment2() { final FileContents fileContents = new FileContents("filename", " /** */ "); fileContents.reportCComment(1, 2, 1, 6); final TextBlock comment = fileContents.getJavadocBefore(2); assertEquals("Invalid comment", new Comment(new String[] {"/** *"}, 2, 1, 6).toString(), comment.toString()); }
protected void processJavaDocLinkParameters( DetailAST aAST ) { final FileContents contents = getFileContents(); final int lineNo = aAST.getLineNo(); final TextBlock cmt = contents.getJavadocBefore(lineNo); if (cmt != null) { final JavadocTags tags = JavaDocUtil.getJavadocTags(cmt, JavadocUtils.JavadocTagType.ALL); for (final JavadocTag tag : tags.getValidTags()) { processJavaDocTag(tag); } for (final InvalidJavadocTag tag : tags.getInvalidTags()) { log(tag.getLine(), tag.getCol(), "import.invalidJavaDocTag", tag.getName()); } } }
final FileContents contents = getFileContents(); final int lineNo = ast.getLineNo(); final TextBlock textBlock = contents.getJavadocBefore(lineNo); if (textBlock == null) { log(lineNo, MSG_JAVADOC_MISSING);
@Override public void visitToken(final DetailAST ast) { final TextBlock javadoc = getFileContents().getJavadocBefore(ast.getLineNo()); final boolean containsTag = containsJavadocTag(javadoc); if (containsTag && !JavadocTagInfo.INHERIT_DOC.isValidOn(ast)) { log(ast.getLineNo(), MSG_KEY_TAG_NOT_VALID_ON, JavadocTagInfo.INHERIT_DOC.getText()); } else { boolean check = true; if (javaFiveCompatibility) { final DetailAST defOrNew = ast.getParent().getParent(); if (defOrNew.findFirstToken(TokenTypes.EXTENDS_CLAUSE) != null || defOrNew.findFirstToken(TokenTypes.IMPLEMENTS_CLAUSE) != null || defOrNew.getType() == TokenTypes.LITERAL_NEW) { check = false; } } if (check && containsTag && !AnnotationUtil.containsAnnotation(ast, OVERRIDE) && !AnnotationUtil.containsAnnotation(ast, FQ_OVERRIDE)) { log(ast.getLineNo(), MSG_KEY_ANNOTATION_MISSING_OVERRIDE); } } }
/** * Collects references made in Javadoc comments. * @param ast node to inspect for Javadoc */ private void collectReferencesFromJavadoc(DetailAST ast) { final FileContents contents = getFileContents(); final int lineNo = ast.getLineNo(); final TextBlock textBlock = contents.getJavadocBefore(lineNo); if (textBlock != null) { referenced.addAll(collectReferencesFromJavadoc(textBlock)); } }
@Override public void visitToken(DetailAST ast) { int lineNumber = ast.getLineNo(); TextBlock javadoc = getFileContents().getJavadocBefore(lineNumber); if (javadoc != null) { checkParamTags(javadoc); } }
@Override public void visitToken(DetailAST ast) { if (shouldCheck(ast)) { final FileContents contents = getFileContents(); final TextBlock textBlock = contents.getJavadocBefore(ast.getLineNo()); if (textBlock == null) { log(ast, MSG_JAVADOC_MISSING); } } }
@Override public void visitToken(final DetailAST ast) { if (AnnotationUtil.containsAnnotation(ast, "Override")) { final FileContents contents = getFileContents(); final TextBlock javadoc = contents.getJavadocBefore( ast.getLineNo() ); if (javadoc != null) { log(ast, "Overridden methods should not have Javadoc"); } } } }
@Override public void visitToken(final DetailAST ast) { if (AnnotationUtil.containsAnnotation(ast, "Override")) { final FileContents contents = getFileContents(); final TextBlock javadoc = contents.getJavadocBefore( ast.getLineNo() ); if (javadoc != null) { log(ast, "Overridden methods should not have Javadoc"); } } } }
@Override public void visitToken(DetailAST ast) { if (shouldCheck(ast)) { final FileContents contents = getFileContents(); // Need to start searching for the comment before the annotations // that may exist. Even if annotations are not defined on the // package, the ANNOTATIONS AST is defined. final TextBlock textBlock = contents.getJavadocBefore(ast.getFirstChild().getLineNo()); checkComment(ast, textBlock); } }
@Override public void visitToken(DetailAST ast) { final FileContents contents = getFileContents(); final int lineNo = ast.getLineNo(); final TextBlock cmt = contents.getJavadocBefore(lineNo); if (cmt == null) { log(lineNo, MSG_MISSING_TAG, tag); } else { checkTag(lineNo, cmt.getText()); } }
@Override public void visitToken(final DetailAST ast) { final TextBlock javadoc = getFileContents().getJavadocBefore(ast.getLineNo()); final boolean containsAnnotation = AnnotationUtil.containsAnnotation(ast, DEPRECATED) || AnnotationUtil.containsAnnotation(ast, FQ_DEPRECATED); final boolean containsJavadocTag = containsJavadocTag(javadoc); if (containsAnnotation ^ containsJavadocTag && !(skipNoJavadoc && javadoc == null)) { log(ast.getLineNo(), MSG_KEY_ANNOTATION_MISSING_DEPRECATED); } }