public class EqualsAvoidNullCheck extends Check
someString.equals(anotherString = "text")).
Rationale: Calling the equals() method on String literals will avoid a potential NullPointerException. Also, it is pretty common to see null check right before equals comparisons which is not necessary in the below example.
For example:
String nullString = null;
nullString.equals("My_Sweet_String");
should be refactored to
String nullString = null;
"My_Sweet_String".equals(nullString);
| Modifier and Type | Field and Description |
|---|---|
static String |
MSG_EQUALS_AVOID_NULL
A key is pointing to the warning message text in "messages.properties"
file.
|
static String |
MSG_EQUALS_IGNORE_CASE_AVOID_NULL
A key is pointing to the warning message text in "messages.properties"
file.
|
| Constructor and Description |
|---|
EqualsAvoidNullCheck() |
| Modifier and Type | Method and Description |
|---|---|
void |
beginTree(DetailAST rootAST)
Called before the starting to process a tree.
|
void |
finishTree(DetailAST ast)
Called after finished processing a tree.
|
int[] |
getAcceptableTokens()
The configurable token set.
|
int[] |
getDefaultTokens()
Returns the default token a check is interested in.
|
int[] |
getRequiredTokens()
The tokens that this check must be registered for.
|
void |
leaveToken(DetailAST ast)
Called after all the child nodes have been process.
|
void |
setIgnoreEqualsIgnoreCase(boolean newValue)
Whether to ignore checking
String.equalsIgnoreCase(String). |
void |
visitToken(DetailAST ast)
Called to process a token.
|
destroy, getClassLoader, getFileContents, getLine, getLines, getTabWidth, getTokenNames, init, isCommentNodesRequired, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokensgetCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, log, setId, setSeverityconfigure, contextualize, finishLocalSetup, getConfiguration, setupChildpublic static final String MSG_EQUALS_AVOID_NULL
public static final String MSG_EQUALS_IGNORE_CASE_AVOID_NULL
public EqualsAvoidNullCheck()
public int[] getDefaultTokens()
CheckgetDefaultTokens in class CheckTokenTypespublic int[] getAcceptableTokens()
CheckgetAcceptableTokens in class CheckTokenTypespublic int[] getRequiredTokens()
CheckgetRequiredTokens in class CheckTokenTypespublic void setIgnoreEqualsIgnoreCase(boolean newValue)
String.equalsIgnoreCase(String).newValue - whether to ignore checking
String.equalsIgnoreCase(String).public void beginTree(DetailAST rootAST)
Checkpublic void visitToken(DetailAST ast)
CheckvisitToken in class Checkast - the token to processpublic void leaveToken(DetailAST ast)
CheckleaveToken in class Checkast - the token leavingpublic void finishTree(DetailAST ast)
CheckfinishTree in class Checkast - the root of the treeCopyright © 2001-2015. All Rights Reserved.