|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!DOCTYPE module PUBLIC
|
|
|
|
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
|
|
|
"http://www.puppycrawl.com/dtds/configuration_1_3.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.
|
|
|
|
-->
|
|
|
|
<module name="Checker">
|
|
|
|
<property name="localeLanguage" value="en"/>
|
|
|
|
|
|
|
|
<module name="FileTabCharacter"/>
|
|
|
|
|
|
|
|
<!-- header -->
|
|
|
|
<module name="Header">
|
|
|
|
<property name="headerFile" value="${config_loc}/java.header" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<module name="TreeWalker">
|
|
|
|
|
|
|
|
<!-- code cleanup -->
|
|
|
|
<module name="UnusedImports">
|
|
|
|
<property name="processJavadoc" value="true" />
|
|
|
|
</module>
|
|
|
|
<module name="RedundantImport"/>
|
|
|
|
<module name="IllegalImport" />
|
|
|
|
<module name="EqualsHashCode"/>
|
|
|
|
<module name="SimplifyBooleanExpression"/>
|
|
|
|
<module name="OneStatementPerLine"/>
|
|
|
|
<module name="UnnecessaryParentheses" />
|
|
|
|
<module name="SimplifyBooleanReturn"/>
|
|
|
|
|
|
|
|
<!-- style -->
|
|
|
|
<module name="DefaultComesLast"/>
|
|
|
|
<module name="EmptyStatement"/>
|
|
|
|
<module name="ArrayTypeStyle"/>
|
|
|
|
<module name="UpperEll"/>
|
|
|
|
<module name="LeftCurly"/>
|
|
|
|
<module name="RightCurly"/>
|
|
|
|
<module name="EmptyStatement"/>
|
|
|
|
<module name="ConstantName">
|
|
|
|
<property name="format" value="(^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$)|(^log$)"/>
|
|
|
|
</module>
|
|
|
|
<module name="LocalVariableName"/>
|
|
|
|
<module name="LocalFinalVariableName"/>
|
|
|
|
<module name="MemberName"/>
|
|
|
|
<module name="ClassTypeParameterName">
|
|
|
|
<property name="format" value="^[A-Z][a-zA-Z0-9]*$$"/>
|
|
|
|
</module>
|
|
|
|
<module name="MethodTypeParameterName">
|
|
|
|
<property name="format" value="^[A-Z][a-zA-Z0-9]*$$"/>
|
|
|
|
</module>
|
|
|
|
<module name="InterfaceTypeParameterName">
|
|
|
|
<property name="format" value="^[A-Z][a-zA-Z0-9]*$$"/>
|
|
|
|
</module>
|
|
|
|
<module name="PackageName"/>
|
|
|
|
<module name="ParameterName"/>
|
|
|
|
<module name="StaticVariableName"/>
|
|
|
|
<module name="TypeName"/>
|
|
|
|
<module name="AvoidStarImport"/>
|
|
|
|
|
|
|
|
<!-- variables that can be final should be final (suppressed except for Streams) -->
|
|
|
|
<module name="FinalLocalVariable">
|
|
|
|
<property name="tokens" value="VARIABLE_DEF,PARAMETER_DEF"/>
|
|
|
|
<property name="validateEnhancedForLoopVariable" value="true"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- dependencies -->
|
|
|
|
<module name="ImportControl">
|
|
|
|
<property name="file" value="${config_loc}/${importControlFile}"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- whitespace -->
|
|
|
|
<module name="GenericWhitespace"/>
|
|
|
|
<module name="NoWhitespaceBefore"/>
|
|
|
|
<module name="WhitespaceAfter" />
|
|
|
|
<module name="NoWhitespaceAfter"/>
|
|
|
|
<module name="WhitespaceAround">
|
|
|
|
<property name="allowEmptyConstructors" value="true"/>
|
|
|
|
<property name="allowEmptyMethods" value="true"/>
|
|
|
|
</module>
|
|
|
|
<module name="Indentation"/>
|
|
|
|
<module name="MethodParamPad"/>
|
|
|
|
<module name="ParenPad"/>
|
|
|
|
<module name="TypecastParenPad"/>
|
|
|
|
|
|
|
|
<!-- locale-sensitive methods should specify locale -->
|
|
|
|
<module name="Regexp">
|
|
|
|
<property name="format" value="\.to(Lower|Upper)Case\(\)"/>
|
|
|
|
<property name="illegalPattern" value="true"/>
|
|
|
|
<property name="ignoreComments" value="true"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<module name="Regexp">
|
|
|
|
<property name="id" value="dontUseSystemExit"/>
|
|
|
|
<property name="format" value="System\.exit"/>
|
|
|
|
<property name="illegalPattern" value="true"/>
|
|
|
|
<property name="ignoreComments" value="true"/>
|
|
|
|
<property name="message" value="'System.exit': Should not directly call System.exit, but Exit.exit instead."/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- code quality -->
|
|
|
|
<module name="MethodLength"/>
|
|
|
|
<module name="ParameterNumber">
|
|
|
|
<!-- default is 8 -->
|
|
|
|
<property name="max" value="13"/>
|
|
|
|
</module>
|
|
|
|
<module name="ClassDataAbstractionCoupling">
|
|
|
|
<!-- default is 7 -->
|
|
|
|
<property name="max" value="25"/>
|
|
|
|
<property name="excludeClassesRegexps" value="AtomicInteger"/>
|
|
|
|
</module>
|
|
|
|
<module name="BooleanExpressionComplexity">
|
|
|
|
<!-- default is 3 -->
|
|
|
|
<property name="max" value="5"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<module name="ClassFanOutComplexity">
|
|
|
|
<!-- default is 20 -->
|
|
|
|
<property name="max" value="50"/>
|
|
|
|
</module>
|
|
|
|
<module name="CyclomaticComplexity">
|
|
|
|
<!-- default is 10-->
|
|
|
|
<property name="max" value="16"/>
|
|
|
|
</module>
|
|
|
|
<module name="JavaNCSS">
|
|
|
|
<!-- default is 50 -->
|
|
|
|
<property name="methodMaximum" value="100"/>
|
|
|
|
</module>
|
|
|
|
<module name="NPathComplexity">
|
|
|
|
<!-- default is 200 -->
|
|
|
|
<property name="max" value="500"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Allows the use of the @SuppressWarnings annotation in the code -->
|
|
|
|
<module name="SuppressWarningsHolder"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<module name="SuppressionFilter">
|
|
|
|
<property name="file" value="${config_loc}/suppressions.xml"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Allows the use of the @SuppressWarnings annotation in the code -->
|
|
|
|
<module name="SuppressWarningsFilter"/>
|
|
|
|
</module>
|