198 lines
7.8 KiB
XML
198 lines
7.8 KiB
XML
<?xml version="1.0"?>
|
|
|
|
<!--
|
|
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.
|
|
-->
|
|
|
|
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.1//EN" "http://www.puppycrawl.com/dtds/configuration_1_1.dtd">
|
|
|
|
<!-- commons math customization of default Checkstyle behavior -->
|
|
<module name="Checker">
|
|
<property name="localeLanguage" value="en"/>
|
|
|
|
<module name="TreeWalker">
|
|
|
|
<!-- Operator must be at end of wrapped line -->
|
|
<module name="OperatorWrap">
|
|
<property name="option" value="eol"/>
|
|
</module>
|
|
|
|
<!-- No if/else/do/for/while without braces -->
|
|
<module name="NeedBraces"/>
|
|
|
|
<!-- Interfaces must be types (not just constants) -->
|
|
<module name="InterfaceIsType"/>
|
|
|
|
<!-- Must have class / interface header comments -->
|
|
<module name="JavadocType"/>
|
|
|
|
<!-- Require method javadocs, allow undeclared RTE -->
|
|
<module name="JavadocMethod">
|
|
<property name="allowUndeclaredRTE" value="true"/>
|
|
<property name="allowThrowsTagsForSubclasses" value="true"/>
|
|
<property name="validateThrows" value="false"/>
|
|
</module>
|
|
|
|
<!-- Require field javadoc -->
|
|
<module name="JavadocVariable"/>
|
|
|
|
<!-- No public fields -->
|
|
<module name="VisibilityModifier">
|
|
<property name="protectedAllowed" value="true"/>
|
|
</module>
|
|
|
|
<!-- Require hash code override when equals is -->
|
|
<module name="EqualsHashCode"/>
|
|
|
|
<!-- Disallow unnecessary instantiation of Boolean, String -->
|
|
<module name="IllegalInstantiation">
|
|
<property name="classes" value="java.lang.Boolean, java.lang.String"/>
|
|
</module>
|
|
|
|
<!-- Required for SuppressionCommentFilter below -->
|
|
<module name="FileContentsHolder"/>
|
|
|
|
<!-- Import should be explicit, really needed and only from pure java packages -->
|
|
<module name="AvoidStarImport" />
|
|
<module name="UnusedImports" />
|
|
<module name="IllegalImport" />
|
|
|
|
<!-- Utility class should not be instantiated, they must have a private constructor -->
|
|
<module name="HideUtilityClassConstructor" />
|
|
|
|
<!-- Switch statements should be complete and with independent cases -->
|
|
<module name="FallThrough" />
|
|
<module name="MissingSwitchDefault" />
|
|
|
|
<!-- Constant names should obey the traditional all uppercase naming convention -->
|
|
<module name="ConstantName" />
|
|
|
|
<!-- Method parameters and local variables should not hide fields, except in constructors and setters -->
|
|
<module name="HiddenField">
|
|
<property name="ignoreConstructorParameter" value="true" />
|
|
<property name="ignoreSetter" value="true" />
|
|
</module>
|
|
|
|
<!-- No trailing whitespace -->
|
|
<module name="Regexp">
|
|
<property name="format" value="[ \t]+$"/>
|
|
<property name="illegalPattern" value="true"/>
|
|
<property name="message" value="Trailing whitespace"/>
|
|
</module>
|
|
|
|
<!-- No System.out.println() statements -->
|
|
<module name="Regexp">
|
|
<!-- no sysouts -->
|
|
<property name="format" value="System\.out\.println"/>
|
|
<property name="illegalPattern" value="true"/>
|
|
</module>
|
|
|
|
<!-- Authors should be in pom.xml file -->
|
|
<module name="Regexp">
|
|
<property name="format" value="@author"/>
|
|
<property name="illegalPattern" value="true"/>
|
|
<property name="message" value="developers names should be in pom file"/>
|
|
</module>
|
|
|
|
<!-- Use a consistent way to put modifiers -->
|
|
<module name="RedundantModifier" />
|
|
<module name="ModifierOrder" />
|
|
|
|
<!-- Use a consistent way to put declarations -->
|
|
<module name="DeclarationOrder" />
|
|
|
|
<!-- Don't add up parentheses when they are not required -->
|
|
<module name="UnnecessaryParentheses" />
|
|
|
|
<!-- Don't use too widespread catch (Exception, Throwable, RuntimeException) -->
|
|
<module name="IllegalCatch" />
|
|
|
|
<!-- Don't use = or != for string comparisons -->
|
|
<module name="StringLiteralEquality" />
|
|
|
|
<!-- Don't declare multiple variables in the same statement -->
|
|
<module name="MultipleVariableDeclarations" />
|
|
|
|
<!-- String literals more than one character long should not be repeated several times -->
|
|
<!-- the "unchecked" string is also accepted to allow @SuppressWarnings("unchecked") -->
|
|
<module name="MultipleStringLiterals" >
|
|
<property name="ignoreStringsRegexp" value='^(("")|(".")|("unchecked"))$'/>
|
|
</module>
|
|
|
|
<!-- Check if @Override tags are present -->
|
|
<module name="MissingOverride" />
|
|
|
|
<!-- <module name="TodoComment" /> -->
|
|
|
|
</module>
|
|
|
|
<!-- Verify that EVERY source file has the appropriate license -->
|
|
<module name="Header">
|
|
<property name="headerFile" value="${checkstyle.header.file}"/>
|
|
</module>
|
|
|
|
<!-- No tabs allowed! -->
|
|
<module name="FileTabCharacter"/>
|
|
|
|
<!-- Require files to end with newline characters -->
|
|
<module name="NewlineAtEndOfFile"/>
|
|
|
|
<!-- Require package javadoc -->
|
|
<module name="JavadocPackage"/>
|
|
|
|
<!-- Setup special comments to suppress specific checks from source files -->
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop JavadocVariable"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume JavadocVariable"/>
|
|
<property name="checkFormat" value="JavadocVariable"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop JavadocMethodCheck"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume JavadocMethodCheck"/>
|
|
<property name="checkFormat" value="JavadocMethodCheck"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop ConstantName"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume ConstantName"/>
|
|
<property name="checkFormat" value="ConstantName"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop HideUtilityClassConstructor"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume HideUtilityClassConstructor"/>
|
|
<property name="checkFormat" value="HideUtilityClassConstructor"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop MultipleVariableDeclarations"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume MultipleVariableDeclarations"/>
|
|
<property name="checkFormat" value="MultipleVariableDeclarations"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop IllegalCatch"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume IllegalCatch"/>
|
|
<property name="checkFormat" value="IllegalCatch"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop DeclarationOrder"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume DeclarationOrder"/>
|
|
<property name="checkFormat" value="DeclarationOrder"/>
|
|
</module>
|
|
<module name="SuppressionCommentFilter">
|
|
<property name="offCommentFormat" value="CHECKSTYLE\: stop all"/>
|
|
<property name="onCommentFormat" value="CHECKSTYLE\: resume all"/>
|
|
</module>
|
|
</module>
|
|
|