Class HeaderCheck
java.lang.Object
com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck
com.puppycrawl.tools.checkstyle.checks.header.AbstractHeaderCheck
com.puppycrawl.tools.checkstyle.checks.header.HeaderCheck
- All Implemented Interfaces:
Configurable
,Contextualizable
,ExternalResourceHolder
,FileSetCheck
Checks that a source file begins with a specified header.
Property
headerFile
specifies a file that contains the required header.
Alternatively, the header specification can be set directly in the
header
property without the need for an external file.
In default configuration, if header is not specified, the default value
of header is set to null
and the check does not rise any violations.
-
Property
charset
- Specify the character encoding to use when reading the headerFile. Type isjava.lang.String
. Default value isthe charset property of the parent <a href="https://checkstyle.org/config.html#Checker">Checker</a> module
. -
Property
fileExtensions
- Specify the file extensions of the files to process. Type isjava.lang.String[]
. Default value is""
. -
Property
header
- Specify the required header specified inline. Individual header lines must be separated by the string"\n"
(even on platforms with a different line separator). Type isjava.lang.String
. Default value isnull
. -
Property
headerFile
- Specify the name of the file containing the required header. Type isjava.net.URI
. Default value isnull
. -
Property
ignoreLines
- Specifies the line numbers to ignore when matching lines in a content of headerFile. Type isint[]
. Default value is""
.
Parent is com.puppycrawl.tools.checkstyle.Checker
Violation Message Keys:
-
header.mismatch
-
header.missing
- Since:
- 6.9
-
Nested Class Summary
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
AbstractAutomaticBean.OutputStreamOptions
-
Field Summary
Modifier and TypeFieldDescriptionprivate BitSet
Specifies the line numbers to ignore when matching lines in a content of headerFile.static final String
A key is pointing to the warning message text in "messages.properties" file.static final String
A key is pointing to the warning message text in "messages.properties" file. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
isIgnoreLine
(int lineNo) Returns true if lineNo is header lines or false.private boolean
Checks if a code line matches the required header line.protected void
Hook method for post-processing header lines.protected void
processFiltered
(File file, FileText fileText) Called to process a file that matches the specified file extensions.void
setIgnoreLines
(int... lines) Setter to specifies the line numbers to ignore when matching lines in a content of headerFile.Methods inherited from class com.puppycrawl.tools.checkstyle.checks.header.AbstractHeaderCheck
finishLocalSetup, getExternalResourceLocations, getHeaderLines, setCharset, setHeader, setHeaderFile
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck
addViolations, beginProcessing, destroy, finishProcessing, fireErrors, getFileContents, getFileExtensions, getMessageDispatcher, getTabWidth, getViolations, init, log, log, process, setFileContents, setFileExtensions, setMessageDispatcher, setTabWidth
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
Methods inherited from class com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
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 Details
-
MSG_MISSING
A key is pointing to the warning message text in "messages.properties" file.- See Also:
-
MSG_MISMATCH
A key is pointing to the warning message text in "messages.properties" file.- See Also:
-
ignoreLines
Specifies the line numbers to ignore when matching lines in a content of headerFile.
-
-
Constructor Details
-
HeaderCheck
public HeaderCheck()
-
-
Method Details
-
isIgnoreLine
Returns true if lineNo is header lines or false.- Parameters:
lineNo
- a line number- Returns:
- if
lineNo
is one of the ignored header lines.
-
isMatch
Checks if a code line matches the required header line.- Parameters:
lineNumber
- the line number to check against the headerline
- the line contents- Returns:
- true if and only if the line matches the required header line
-
setIgnoreLines
Setter to specifies the line numbers to ignore when matching lines in a content of headerFile.- Parameters:
lines
- line numbers to ignore in header.- Since:
- 3.2
-
processFiltered
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.
-
postProcessHeaderLines
Description copied from class:AbstractHeaderCheck
Hook method for post-processing header lines. This implementation does nothing.- Specified by:
postProcessHeaderLines
in classAbstractHeaderCheck
-