diff --git a/pom.xml b/pom.xml
index 5971c1273..8888b6995 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1112,7 +1112,6 @@
.*.checks.coding.ExplicitInitializationCheck9197
.*.checks.coding.FinalLocalVariableCheck83100
.*.checks.coding.IllegalInstantiationCheck8197
- .*.checks.coding.IllegalTypeCheck9394
.*.checks.coding.ModifiedControlVariableCheck9197
.*.checks.coding.OverloadMethodsDeclarationOrderCheck93100
.*.checks.coding.ParameterAssignmentCheck8096
diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheck.java
index 49f3c0632..b3ba08b86 100644
--- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheck.java
+++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheck.java
@@ -251,7 +251,7 @@ public final class IllegalTypeCheck extends AbstractFormatCheck {
*/
private void visitImport(DetailAST importAst) {
if (!isStarImport(importAst)) {
- final String canonicalName = getCanonicalName(importAst);
+ final String canonicalName = getImportedTypeCanonicalName(importAst);
extendIllegalClassNamesWithShortName(canonicalName);
}
}
@@ -327,14 +327,12 @@ public final class IllegalTypeCheck extends AbstractFormatCheck {
* @param importAst {@link TokenTypes#IMPORT Import}
* @return Imported canonical type's name.
*/
- private static String getCanonicalName(DetailAST importAst) {
+ private static String getImportedTypeCanonicalName(DetailAST importAst) {
final StringBuilder canonicalNameBuilder = new StringBuilder();
DetailAST toVisit = importAst;
while (toVisit != null) {
toVisit = getNextSubTreeNode(toVisit, importAst);
- if (toVisit != null
- && (toVisit.getType() == TokenTypes.IDENT
- || toVisit.getType() == TokenTypes.STAR)) {
+ if (toVisit != null && toVisit.getType() == TokenTypes.IDENT) {
canonicalNameBuilder.append(toVisit.getText());
final DetailAST nextSubTreeNode = getNextSubTreeNode(toVisit, importAst);
if (nextSubTreeNode.getType() != TokenTypes.SEMI) {
@@ -389,15 +387,6 @@ public final class IllegalTypeCheck extends AbstractFormatCheck {
Collections.addAll(illegalClassNames, classNames);
}
- /**
- * Get the list of illegal variable types.
- * @return array of illegal variable types
- */
- public String[] getIllegalClassNames() {
- return illegalClassNames.toArray(
- new String[illegalClassNames.size()]);
- }
-
/**
* Set the list of ignore method names.
* @param methodNames array of ignored method names
@@ -407,15 +396,6 @@ public final class IllegalTypeCheck extends AbstractFormatCheck {
Collections.addAll(ignoredMethodNames, methodNames);
}
- /**
- * Get the list of ignored method names.
- * @return array of ignored method names
- */
- public String[] getIgnoredMethodNames() {
- return ignoredMethodNames.toArray(
- new String[ignoredMethodNames.size()]);
- }
-
/**
* Set the list of legal abstract class names.
* @param classNames array of legal abstract class names
@@ -425,15 +405,6 @@ public final class IllegalTypeCheck extends AbstractFormatCheck {
Collections.addAll(legalAbstractClassNames, classNames);
}
- /**
- * Get the list of legal abstract class names.
- * @return array of legal abstract class names
- */
- public String[] getLegalAbstractClassNames() {
- return legalAbstractClassNames.toArray(
- new String[legalAbstractClassNames.size()]);
- }
-
/**
* Set the list of member modifiers (of methods and fields) which should be checked.
* @param modifiers String contains modifiers.
diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheckTest.java
index 920fe630b..56e5e6145 100644
--- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheckTest.java
+++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalTypeCheckTest.java
@@ -29,6 +29,8 @@ import org.junit.Test;
import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
+import com.puppycrawl.tools.checkstyle.api.DetailAST;
+import com.puppycrawl.tools.checkstyle.api.TokenTypes;
public class IllegalTypeCheckTest extends BaseCheckTestSupport {
private DefaultConfiguration checkConfig;
@@ -168,4 +170,20 @@ public class IllegalTypeCheckTest extends BaseCheckTestSupport {
Assert.assertNotNull(check.getDefaultTokens());
Assert.assertNotNull(check.getRequiredTokens());
}
+
+ @Test
+ public void testImproperToken() throws Exception {
+ IllegalTypeCheck check = new IllegalTypeCheck();
+
+ DetailAST classDefAst = new DetailAST();
+ classDefAst.setType(TokenTypes.CLASS_DEF);
+
+ try {
+ check.visitToken(classDefAst);
+ Assert.fail();
+ }
+ catch (IllegalStateException e) {
+ // it is OK
+ }
+ }
}
diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/coding/InputIllegalType.java b/src/test/resources/com/puppycrawl/tools/checkstyle/coding/InputIllegalType.java
index 10c69b618..9254eff22 100644
--- a/src/test/resources/com/puppycrawl/tools/checkstyle/coding/InputIllegalType.java
+++ b/src/test/resources/com/puppycrawl/tools/checkstyle/coding/InputIllegalType.java
@@ -18,4 +18,7 @@ public class InputIllegalType {
static class SomeStaticClass {
}
+
+ InputIllegalType(Integer i) {}
+ private void table2(Integer i) {}
}