Class FileTabCharacterCheck
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.api.AutomaticBean
-
- com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
-
- com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck
-
- com.puppycrawl.tools.checkstyle.checks.whitespace.FileTabCharacterCheck
-
- All Implemented Interfaces:
Configurable
,Contextualizable
,FileSetCheck
public class FileTabCharacterCheck extends AbstractFileSetCheck
Checks that there are no tab characters (
'\t'
) in the source code.Rationale:
- Developers should not need to configure the tab width of their text editors in order to be able to read source code.
- From the Apache jakarta coding standards: In a distributed development environment, when the commit messages get sent to a mailing list, they are almost impossible to read if you use tabs.
-
Property
eachLine
- Control whether to report on each line containing a tab, or just the first instance. Type isboolean
. Default value isfalse
. -
Property
fileExtensions
- Specify file type extension of files to process. Type isjava.lang.String[]
. Default value is""
.
To configure the check to report on the first instance in each file:
<module name="FileTabCharacter"/>
To configure the check to report on each line in each file:
<module name="FileTabCharacter"> <property name="eachLine" value="true"/> </module>
Parent is
com.puppycrawl.tools.checkstyle.Checker
Violation Message Keys:
-
containsTab
-
file.containsTab
- Since:
- 5.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
AutomaticBean.OutputStreamOptions
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
MSG_CONTAINS_TAB
A key is pointing to the warning message text in "messages.properties" file.static java.lang.String
MSG_FILE_CONTAINS_TAB
A key is pointing to the warning message text in "messages.properties" file.
-
Constructor Summary
Constructors Constructor Description FileTabCharacterCheck()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
processFiltered(java.io.File file, FileText fileText)
Called to process a file that matches the specified file extensions.void
setEachLine(boolean eachLine)
Setter to control whether to report on each line containing a tab, or just the first instance.-
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck
addMessages, beginProcessing, destroy, finishProcessing, fireErrors, getFileContents, getFileExtensions, getMessageDispatcher, getMessages, getTabWidth, init, log, log, process, setFileContents, setFileExtensions, setMessageDispatcher, setTabWidth
-
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
-
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
configure, contextualize, getConfiguration, setupChild
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.puppycrawl.tools.checkstyle.api.Configurable
configure
-
Methods inherited from interface com.puppycrawl.tools.checkstyle.api.Contextualizable
contextualize
-
-
-
-
Field Detail
-
MSG_CONTAINS_TAB
public static final java.lang.String MSG_CONTAINS_TAB
A key is pointing to the warning message text in "messages.properties" file.- See Also:
- Constant Field Values
-
MSG_FILE_CONTAINS_TAB
public static final java.lang.String MSG_FILE_CONTAINS_TAB
A key is pointing to the warning message text in "messages.properties" file.- See Also:
- Constant Field Values
-
-
Method Detail
-
processFiltered
protected void processFiltered(java.io.File file, FileText fileText)
Description copied from class:AbstractFileSetCheck
Called to process a file that matches the specified file extensions.- Specified by:
processFiltered
in classAbstractFileSetCheck
- Parameters:
file
- the file to be processedfileText
- the contents of the file.
-
setEachLine
public void setEachLine(boolean eachLine)
Setter to control whether to report on each line containing a tab, or just the first instance.- Parameters:
eachLine
- Whether report on each line containing a tab.
-
-