aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorrnveach <rveach02@gmail.com>2015-11-10 12:31:49 -0500
committerRoman Ivanov <ivanov-jr@mail.ru>2015-11-12 19:16:17 -0800
commit9faf80abaee2a2e224c7d0f9d4a45307b37a398e (patch)
tree20313c79aba3e1f30c3166579e8d3041b12604d5 /src/main
parent1edb2ce5f71ca1d719e708f475ce0914b3d7597c (diff)
downloadcheckstyle-9faf80abaee2a2e224c7d0f9d4a45307b37a398e.tar.gz
Issue #2451: removed excess hierarchy from RightCurlyCheck
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck.java27
1 files changed, 20 insertions, 7 deletions
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 359a7c0bd..a268a6719 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
@@ -19,12 +19,15 @@
package com.puppycrawl.tools.checkstyle.checks.blocks;
+import java.util.Locale;
+
+import org.apache.commons.beanutils.ConversionException;
import org.apache.commons.lang3.ArrayUtils;
+import com.puppycrawl.tools.checkstyle.api.Check;
import com.puppycrawl.tools.checkstyle.api.DetailAST;
import com.puppycrawl.tools.checkstyle.api.Scope;
import com.puppycrawl.tools.checkstyle.api.TokenTypes;
-import com.puppycrawl.tools.checkstyle.checks.AbstractOptionCheck;
import com.puppycrawl.tools.checkstyle.utils.CheckUtils;
import com.puppycrawl.tools.checkstyle.utils.CommonUtils;
import com.puppycrawl.tools.checkstyle.utils.ScopeUtils;
@@ -80,7 +83,7 @@ import com.puppycrawl.tools.checkstyle.utils.ScopeUtils;
* @author Andrei Selkin
* @author <a href="mailto:piotr.listkiewicz@gmail.com">liscju</a>
*/
-public class RightCurlyCheck extends AbstractOptionCheck<RightCurlyOption> {
+public class RightCurlyCheck extends Check {
/**
* A key is pointing to the warning message text in "messages.properties"
* file.
@@ -108,11 +111,21 @@ public class RightCurlyCheck extends AbstractOptionCheck<RightCurlyOption> {
/** Do we need to check if right curly starts line. */
private boolean shouldStartLine = true;
+ /** The policy to enforce. */
+ private RightCurlyOption option = RightCurlyOption.SAME;
+
/**
- * Sets the right curly option to same.
+ * Set the option to enforce.
+ * @param optionStr string to decode option from
+ * @throws ConversionException if unable to decode
*/
- public RightCurlyCheck() {
- super(RightCurlyOption.SAME, RightCurlyOption.class);
+ public void setOption(String optionStr) {
+ try {
+ option = RightCurlyOption.valueOf(optionStr.trim().toUpperCase(Locale.ENGLISH));
+ }
+ catch (IllegalArgumentException iae) {
+ throw new ConversionException("unable to parse " + optionStr, iae);
+ }
}
/**
@@ -171,10 +184,10 @@ public class RightCurlyCheck extends AbstractOptionCheck<RightCurlyOption> {
final String violation;
if (shouldStartLine) {
final String targetSourceLine = getLines()[rcurly.getLineNo() - 1];
- violation = validate(details, getAbstractOption(), true, targetSourceLine);
+ violation = validate(details, option, true, targetSourceLine);
}
else {
- violation = validate(details, getAbstractOption(), false, "");
+ violation = validate(details, option, false, "");
}
if (!violation.isEmpty()) {