207 lines
8.0 KiB
XML
207 lines
8.0 KiB
XML
<?xml version="1.0"?>
|
|
<!DOCTYPE module PUBLIC
|
|
"-//Checkstyle//DTD Checkstyle Configuration 1.2//EN"
|
|
"https://checkstyle.org/dtds/configuration_1_2.dtd">
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
<!--
|
|
|
|
Checkstyle configuration for Hadoop that is based on the sun_checks.xml file
|
|
that is bundled with Checkstyle and includes checks for:
|
|
|
|
- the Java Language Specification at
|
|
http://java.sun.com/docs/books/jls/second_edition/html/index.html
|
|
|
|
- the Sun Code Conventions at http://java.sun.com/docs/codeconv/
|
|
|
|
- the Javadoc guidelines at
|
|
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
|
|
|
|
- the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html
|
|
|
|
- some best practices
|
|
|
|
Checkstyle is very configurable. Be sure to read the documentation at
|
|
http://checkstyle.sf.net (or in your downloaded distribution).
|
|
|
|
Most Checks are configurable, be sure to consult the documentation.
|
|
|
|
To completely disable a check, just comment it out or delete it from the file.
|
|
|
|
Finally, it is worth reading the documentation.
|
|
|
|
-->
|
|
|
|
<module name="Checker">
|
|
|
|
<module name="SuppressWarningsFilter"/>
|
|
|
|
<!-- Checks that a package.html file exists for each package. -->
|
|
<!-- See http://checkstyle.sf.net/config_javadoc.html#PackageHtml -->
|
|
<module name="JavadocPackage"/>
|
|
|
|
<!-- Checks whether files end with a new line. -->
|
|
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
|
|
<!-- module name="NewlineAtEndOfFile"/-->
|
|
|
|
<!-- Checks that property files contain the same keys. -->
|
|
<!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
|
|
<module name="Translation"/>
|
|
|
|
<!-- We have many existing long files, this check ends up being spurious -->
|
|
<!--<module name="FileLength">-->
|
|
<module name="FileTabCharacter"/>
|
|
|
|
<!-- Checks for line length violations. -->
|
|
<!-- See https://checkstyle.sourceforge.io/config_sizes.html#LineLength -->
|
|
<module name="LineLength">
|
|
<property name="max" value="100"/>
|
|
</module>
|
|
|
|
<module name="TreeWalker">
|
|
|
|
<module name="SuppressWarningsHolder"/>
|
|
<module name="SuppressionCommentFilter"/>
|
|
<module name="SuppressWithNearbyCommentFilter"/>
|
|
|
|
|
|
<!-- Checks for Javadoc comments. -->
|
|
<!-- See http://checkstyle.sf.net/config_javadoc.html -->
|
|
<module name="JavadocType">
|
|
<property name="scope" value="public"/>
|
|
<property name="allowMissingParamTags" value="true"/>
|
|
</module>
|
|
<module name="JavadocStyle"/>
|
|
|
|
<!-- Checks for Naming Conventions. -->
|
|
<!-- See http://checkstyle.sf.net/config_naming.html -->
|
|
<module name="ConstantName"/>
|
|
<module name="LocalFinalVariableName"/>
|
|
<module name="LocalVariableName"/>
|
|
<module name="MemberName"/>
|
|
<module name="MethodName"/>
|
|
<module name="PackageName"/>
|
|
<module name="ParameterName"/>
|
|
<module name="StaticVariableName"/>
|
|
<module name="TypeName"/>
|
|
|
|
|
|
<!-- Checks for Headers -->
|
|
<!-- See http://checkstyle.sf.net/config_header.html -->
|
|
<!-- <module name="Header"> -->
|
|
<!-- The follow property value demonstrates the ability -->
|
|
<!-- to have access to ANT properties. In this case it uses -->
|
|
<!-- the ${basedir} property to allow Checkstyle to be run -->
|
|
<!-- from any directory within a project. See property -->
|
|
<!-- expansion, -->
|
|
<!-- http://checkstyle.sf.net/config.html#properties -->
|
|
<!-- <property -->
|
|
<!-- name="headerFile" -->
|
|
<!-- value="${basedir}/java.header"/> -->
|
|
<!-- </module> -->
|
|
|
|
<!-- Following interprets the header file as regular expressions. -->
|
|
<!-- <module name="RegexpHeader"/> -->
|
|
|
|
|
|
<!-- Checks for imports -->
|
|
<!-- See http://checkstyle.sf.net/config_import.html -->
|
|
<module name="IllegalImport">
|
|
<property name="regexp" value="true"/>
|
|
<property name="illegalPkgs" value="sun"/>
|
|
</module>
|
|
<module name="RedundantImport"/>
|
|
<module name="UnusedImports"/>
|
|
|
|
|
|
<!-- Checks for Size Violations. -->
|
|
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
|
<module name="MethodLength"/>
|
|
<module name="ParameterNumber">
|
|
<property name="ignoreOverriddenMethods" value="true"/>
|
|
</module>
|
|
|
|
|
|
<!-- Checks for whitespace -->
|
|
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
|
<module name="EmptyForIteratorPad"/>
|
|
<module name="MethodParamPad"/>
|
|
<module name="NoWhitespaceAfter"/>
|
|
<module name="NoWhitespaceBefore"/>
|
|
<module name="ParenPad"/>
|
|
<module name="TypecastParenPad"/>
|
|
<module name="WhitespaceAfter">
|
|
<property name="tokens" value="COMMA, SEMI"/>
|
|
</module>
|
|
|
|
|
|
<!-- Modifier Checks -->
|
|
<!-- See http://checkstyle.sf.net/config_modifiers.html -->
|
|
<!-- This one is nitty, disable -->
|
|
<!-- <module name="ModifierOrder"/> -->
|
|
<module name="RedundantModifier"/>
|
|
|
|
|
|
<!-- Checks for blocks. You know, those {}'s -->
|
|
<!-- See http://checkstyle.sf.net/config_blocks.html -->
|
|
<module name="AvoidNestedBlocks">
|
|
<property name="allowInSwitchCase" value="true"/>
|
|
</module>
|
|
<module name="EmptyBlock"/>
|
|
<module name="LeftCurly"/>
|
|
<module name="NeedBraces"/>
|
|
<module name="RightCurly"/>
|
|
|
|
|
|
<!-- Checks for common coding problems -->
|
|
<!-- See http://checkstyle.sf.net/config_coding.html -->
|
|
<!-- module name="AvoidInlineConditionals"/-->
|
|
<module name="EmptyStatement"/>
|
|
<module name="EqualsHashCode"/>
|
|
<module name="HiddenField">
|
|
<property name="ignoreConstructorParameter" value="true"/>
|
|
<property name="ignoreSetter" value="true"/>
|
|
</module>
|
|
<module name="IllegalInstantiation"/>
|
|
<module name="InnerAssignment"/>
|
|
<module name="MissingSwitchDefault"/>
|
|
<module name="SimplifyBooleanExpression"/>
|
|
<module name="SimplifyBooleanReturn"/>
|
|
|
|
<!-- Checks for class design -->
|
|
<!-- See http://checkstyle.sf.net/config_design.html -->
|
|
<module name="FinalClass"/>
|
|
<module name="HideUtilityClassConstructor"/>
|
|
<module name="InterfaceIsType"/>
|
|
<module name="VisibilityModifier"/>
|
|
|
|
|
|
<!-- Miscellaneous other checks. -->
|
|
<!-- See http://checkstyle.sf.net/config_misc.html -->
|
|
<module name="ArrayTypeStyle"/>
|
|
<module name="Indentation">
|
|
<property name="basicOffset" value="2" />
|
|
<property name="caseIndent" value="0" />
|
|
</module>
|
|
<!--<module name="TodoComment"/>-->
|
|
<module name="UpperEll"/>
|
|
|
|
</module>
|
|
|
|
</module>
|