| <?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"> | |
| <!-- | |
| Checkstyle configuration that checks the maven coding conventions. | |
| --> | |
| <module name="Checker"> | |
| <!-- Checks that a package.html file exists for each package. --> | |
| <!-- See http://checkstyle.sf.net/config_javadoc.html#PackageHtml --> | |
| <!-- module name="PackageHtml"/ --> | |
| <!-- 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"/ --> | |
| <!-- Checks for Headers --> | |
| <!-- See http://checkstyle.sf.net/config_header.html --> | |
| <module name="Header"> | |
| <property name="headerFile" value="${checkstyle.header.file}"/> | |
| <property name="fileExtensions" value="java"/> | |
| </module> | |
| <!-- Checks for whitespace --> | |
| <!-- See http://checkstyle.sf.net/config_whitespace.html --> | |
| <module name="FileTabCharacter"/> | |
| <!-- Checks for Size Violations. --> | |
| <!-- See http://checkstyle.sf.net/config_sizes.html --> | |
| <module name="FileLength"> | |
| <property name="fileExtensions" value="java"/> | |
| <property name="max" value="3000"/> | |
| </module> | |
| <module name="LineLength"> | |
| <property name="max" value="120" /> | |
| <property name="ignorePattern" value="@version|@see"/> | |
| <property name="fileExtensions" value="java"/> | |
| </module> | |
| <module name="TreeWalker"> | |
| <!-- allow usage of CHECKSTYLE:OFF and CHECKSTYLE:ON --> | |
| <module name="SuppressionCommentFilter"/> | |
| <!-- Checks for Javadoc comments. --> | |
| <!-- See http://checkstyle.sf.net/config_javadoc.html --> | |
| <!-- module name="JavadocMethod"/ --> | |
| <!-- module name="JavadocType"/ --> | |
| <!-- module name="JavadocVariable"/ --> | |
| <!-- Checks for Naming Conventions. --> | |
| <!-- See http://checkstyle.sf.net/config_naming.html --> | |
| <!-- | |
| <module name="MemberName"> | |
| <property name="format" value="^_[a-z][a-zA-Z0-9]*$"/> | |
| </module> | |
| --> | |
| <module name="ConstantName"> | |
| <!-- Normal rules, except that: | |
| - * any name can start with an underscore. | |
| - * "log" is allowed; this is a traditional name for log objects | |
| - * names ending with "ThreadLocal" are allowed so that threadlocal vars don't have to be | |
| - all-caps. They are static final, but are not really constants. Yes, type prefixes | |
| - on variable names sucks ("hungarian notation") but checkstyle doesn't allow | |
| - name rules to vary by the type of the constant, and no other alternative seems | |
| - any better. | |
| --> | |
| <property name="format" | |
| value="^_?((log)|([a-z][a-zA-Z]*ThreadLocal)|([A-Z][A-Z0-9]*(_[A-Z0-9]+)*))$"/> | |
| </module> | |
| <module name="LocalVariableName"/> | |
| <module name="MethodName"> | |
| <property name="format" value="^_?[a-z][a-zA-Z0-9]*$"/> | |
| </module> | |
| <module name="PackageName"/> | |
| <module name="LocalFinalVariableName"/> | |
| <module name="ParameterName"/> | |
| <module name="StaticVariableName"/> | |
| <module name="TypeName"> | |
| <property name="format" value="^_?[A-Z][a-zA-Z0-9]*$"/> | |
| </module> | |
| <!-- Checks for imports --> | |
| <!-- See http://checkstyle.sf.net/config_import.html --> | |
| <module name="AvoidStarImport"> | |
| <property name="excludes" value="java.io,java.net,java.lang.Math,org.apache.myfaces.config.impl.digester.elements"/> | |
| <property name="allowStaticMemberImports" value="true"/> | |
| </module> | |
| <module name="IllegalImport"/> | |
| <module name="RedundantImport"/> | |
| <module name="UnusedImports"/> | |
| <module name="MethodLength"> | |
| <property name="max" value="300" /> | |
| </module> | |
| <module name="ParameterNumber"> | |
| <property name="max" value="10" /> | |
| </module> | |
| <!-- Modifier Checks --> | |
| <!-- See http://checkstyle.sf.net/config_modifiers.html --> | |
| <!-- module name="ModifierOrder"/ --> | |
| <!-- module name="RedundantModifier"/ --> | |
| <!-- Checks for blocks. You know, those {}'s --> | |
| <!-- See http://checkstyle.sf.net/config_blocks.html --> | |
| <!-- module name="EmptyBlock"/ --> | |
| <module name="NeedBraces"/> | |
| <module name="LeftCurly"> | |
| <property name="option" value="nl"/> | |
| </module> | |
| <module name="RightCurly"> | |
| <property name="option" value="alone"/> | |
| </module> | |
| <!-- Checks for common coding problems --> | |
| <!-- See http://checkstyle.sf.net/config_coding.html --> | |
| <module name="EmptyStatement"/> | |
| <module name="EqualsHashCode"/> | |
| <module name="InnerAssignment"/> | |
| <module name="DefaultComesLast"/> | |
| <module name="MissingSwitchDefault"/> | |
| <module name="FallThrough"/> | |
| <module name="MultipleVariableDeclarations"/> | |
| <!-- Checks for class design --> | |
| <!-- See http://checkstyle.sf.net/config_design.html --> | |
| <!-- module name="DesignForExtension"/ --> | |
| <!-- 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="FinalParameters"/ --> | |
| <!-- Line with Trailing Spaces (disabled as it's to noisy) | |
| <module name="GenericIllegalRegexp"> | |
| <property name="format" value="\s+$"/> | |
| <property name="message" value="Line has trailing spaces."/> | |
| </module> | |
| --> | |
| <module name="UpperEll"/> | |
| </module> | |
| </module> |