From c99f34002b7340ec8d0888f8f9b3992df798e408 Mon Sep 17 00:00:00 2001 From: Roman Ivanov Date: Sat, 13 Jun 2015 18:37:28 -0700 Subject: [PATCH] RightCurlyCheck updated to follow Cyclomatic Complexity rule. #954 --- config/pmd.xml | 5 ++- .../checks/blocks/RightCurlyCheck.java | 33 ++++++++++++------- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/config/pmd.xml b/config/pmd.xml index 7efb4ae2e..6fcee6e91 100644 --- a/config/pmd.xml +++ b/config/pmd.xml @@ -22,7 +22,10 @@ - + + diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java index 36f7d0ef1..05589450c 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java @@ -154,6 +154,28 @@ public class RightCurlyCheck extends AbstractOptionCheck { } final DetailAST lcurly = details.lcurly; + + validate(details, rcurly, lcurly); + + if (!shouldStartLine) { + return; + } + final boolean startsLine = + Utils.whitespaceBefore(rcurly.getColumnNo(), + getLines()[rcurly.getLineNo() - 1]); + + if (!startsLine && lcurly.getLineNo() != rcurly.getLineNo()) { + log(rcurly, MSG_KEY_LINE_NEW, "}"); + } + } + + /** + * do general validation + * @param details details + * @param rcurly right curly token + * @param lcurly left curly token + */ + private void validate(Details details, DetailAST rcurly, DetailAST lcurly) { final DetailAST nextToken = details.nextToken; final boolean shouldCheckLastRcurly = details.shouldCheckLastRcurly; @@ -175,17 +197,6 @@ public class RightCurlyCheck extends AbstractOptionCheck { && !isEmptyBody(lcurly)) { log(rcurly, MSG_KEY_LINE_ALONE, "}"); } - - if (!shouldStartLine) { - return; - } - final boolean startsLine = - Utils.whitespaceBefore(rcurly.getColumnNo(), - getLines()[rcurly.getLineNo() - 1]); - - if (!startsLine && lcurly.getLineNo() != rcurly.getLineNo()) { - log(rcurly, MSG_KEY_LINE_NEW, "}"); - } } /**