|
|
@@ -0,0 +1,257 @@ |
|
|
|
<?xml version="1.0"?>
|
|
|
|
<!DOCTYPE module PUBLIC
|
|
|
|
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
|
|
|
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
|
|
|
|
|
|
|
|
<!-- Checkstyle configuration for Vaadin that is based on the the sun coding
|
|
|
|
conventions from:
|
|
|
|
- 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 Vaadin specific changes:
|
|
|
|
- Removed DoubleCheckedLocking because it doesn't work in CheckStyle 5.6
|
|
|
|
-> http://www.smartics.eu/bugzilla/show_bug.cgi?id=593
|
|
|
|
- Modified HiddenField Check to allow field shadowing on Constructor, Setter
|
|
|
|
and Abstract Method parameters.
|
|
|
|
- Modified StaticVariableName Check format for PUBLIC variables from ^[a-z][a-zA-Z0-9]*$
|
|
|
|
to ^[A-Z_]*$ . Others (protected, package and private) still have ^[a-z][a-zA-Z0-9]*$
|
|
|
|
- Modified the severity of the following Checks from error to info:
|
|
|
|
• JavadocPackage (checks for package-info.java)
|
|
|
|
• JavadocType (class and interface declarations, scope private)
|
|
|
|
• JavadocMethod (method declarations, scope private)
|
|
|
|
• JavadocVariable (variable declarations, scope private)
|
|
|
|
• JavadocStyle (Javadocs are "well formed")
|
|
|
|
- Modified the severity of the following Checks from error to warning because
|
|
|
|
not so critical:
|
|
|
|
• LineLenght (the default value is 80 which is also used in formatter, but
|
|
|
|
i.e. member declarations are not wrapped onto next line)
|
|
|
|
• RedundantModifier (i.e. using public in interface method declarations)
|
|
|
|
• RedundantThrows (causes unnecessary fails when can't get class information)
|
|
|
|
• MethodLength (default maxLength is 150)
|
|
|
|
• ParameterNumber (default maxLength is 7)
|
|
|
|
• EmptyBlock (if-else statements have some blocks if x -> no action)
|
|
|
|
• UpperEll (should use L instead of l with long)
|
|
|
|
• TodoComment (not serious)
|
|
|
|
• WhitespaceAroundCheck (expects whitespace around some operators)
|
|
|
|
NOTE other checks are also warning but should be error.
|
|
|
|
- Modified the severity of the following Checks from error to ignore:
|
|
|
|
• FinalParameters (method parameters can be modified)
|
|
|
|
• VisibilityModifier (i.e. in state classes public members are allowed)
|
|
|
|
• DesignForExtension (this design is not used)
|
|
|
|
• FileLength (bad design to have files with over 2000 lines? see VScrollTable)
|
|
|
|
• MagicNumber (MagicNumbers like error codes are used, but could just ignore
|
|
|
|
this in some classes)
|
|
|
|
• AvoidInlineConditionals ( you like these ? ignore : error ) -->
|
|
|
|
|
|
|
|
<module name="Checker">
|
|
|
|
<!-- If you set the basedir property below, then all reported file names
|
|
|
|
will be relative to the specified directory. See http://checkstyle.sourceforge.net/5.x/config.html#Checker
|
|
|
|
<property name="basedir" value="${basedir}"/> -->
|
|
|
|
|
|
|
|
<!-- Checks that a package-info.java file exists for each package. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_javadoc.html#JavadocPackage -->
|
|
|
|
<module name="JavadocPackage">
|
|
|
|
<property name="severity" value="info" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Checks whether files end with a new line. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
|
|
|
|
<module name="NewlineAtEndOfFile">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Checks that property files contain the same keys. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_misc.html#Translation -->
|
|
|
|
<module name="Translation">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Checks for Size Violations. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
|
|
|
<module name="FileLength">
|
|
|
|
<property name="severity" value="ignore" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Checks for whitespace -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
|
|
|
<module name="FileTabCharacter">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- 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>
|
|
|
|
|
|
|
|
<module name="TreeWalker">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
|
|
|
|
<!-- Custom checks to check serializable, neither is working because checkstyle
|
|
|
|
can't load the classes. <module name="com.vaadin.checks.CheckClassesSerializable"/>
|
|
|
|
<module name="com.vaadin.checks.IsSerializableClassCheck"/> -->
|
|
|
|
|
|
|
|
<!-- Checks for Javadoc comments. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_javadoc.html -->
|
|
|
|
<module name="JavadocMethod">
|
|
|
|
<property name="severity" value="info" />
|
|
|
|
</module>
|
|
|
|
<module name="JavadocType">
|
|
|
|
<property name="severity" value="info" />
|
|
|
|
</module>
|
|
|
|
<module name="JavadocVariable">
|
|
|
|
<property name="severity" value="info" />
|
|
|
|
</module>
|
|
|
|
<module name="JavadocStyle">
|
|
|
|
<property name="severity" value="info" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- 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">
|
|
|
|
<property name="applyToPublic" value="false" />
|
|
|
|
</module>
|
|
|
|
<module name="StaticVariableName">
|
|
|
|
<property name="applyToPublic" value="true" />
|
|
|
|
<property name="applyToProtected" value="false" />
|
|
|
|
<property name="applyToPackage" value="false" />
|
|
|
|
<property name="applyToPrivate" value="false" />
|
|
|
|
<property name="format" value="^[A-Z_]*$" />
|
|
|
|
</module>
|
|
|
|
<module name="TypeName" />
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Checks for imports -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_import.html -->
|
|
|
|
<module name="AvoidStarImport" />
|
|
|
|
<module name="IllegalImport" /> <!-- defaults to sun.* packages -->
|
|
|
|
<module name="RedundantImport" />
|
|
|
|
<module name="UnusedImports" />
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Checks for Size Violations. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_sizes.html -->
|
|
|
|
<module name="LineLength">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
<module name="MethodLength">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
<module name="ParameterNumber">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Checks for whitespace -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
|
|
|
<module name="EmptyForIteratorPad" />
|
|
|
|
<module name="GenericWhitespace" />
|
|
|
|
<module name="MethodParamPad" />
|
|
|
|
<module name="NoWhitespaceAfter" />
|
|
|
|
<module name="NoWhitespaceBefore" />
|
|
|
|
<module name="OperatorWrap" />
|
|
|
|
<module name="ParenPad" />
|
|
|
|
<module name="TypecastParenPad" />
|
|
|
|
<module name="WhitespaceAfter" />
|
|
|
|
<module name="WhitespaceAround" />
|
|
|
|
<!-- Check for trailing white space in Java code -->
|
|
|
|
<module name="RegexpSinglelineJava">
|
|
|
|
<!-- Ensure no whitespace at the end of line, excluding comments -->
|
|
|
|
<property name="format" value="\s+$" />
|
|
|
|
<property name="minimum" value="0" />
|
|
|
|
<property name="maximum" value="0" />
|
|
|
|
<property name="message" value="Java code has trailing white space." />
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
<property name="ignoreComments" value="true" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Modifier Checks -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_modifiers.html -->
|
|
|
|
<module name="ModifierOrder" />
|
|
|
|
<module name="RedundantModifier">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Checks for blocks. You know, those {}'s -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_blocks.html -->
|
|
|
|
<module name="AvoidNestedBlocks" />
|
|
|
|
<module name="EmptyBlock">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
<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">
|
|
|
|
<property name="severity" value="ignore" />
|
|
|
|
</module>
|
|
|
|
<module name="EmptyStatement" />
|
|
|
|
<module name="EqualsHashCode" />
|
|
|
|
<module name="HiddenField">
|
|
|
|
<property name="ignoreConstructorParameter" value="true" />
|
|
|
|
<property name="ignoreSetter" value="true" />
|
|
|
|
<property name="ignoreAbstractMethods" value="true" />
|
|
|
|
</module>
|
|
|
|
<module name="IllegalInstantiation" />
|
|
|
|
<module name="InnerAssignment" />
|
|
|
|
<module name="MagicNumber">
|
|
|
|
<property name="severity" value="ignore" />
|
|
|
|
</module>
|
|
|
|
<module name="MissingSwitchDefault" />
|
|
|
|
<module name="RedundantThrows">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
<module name="SimplifyBooleanExpression" />
|
|
|
|
<module name="SimplifyBooleanReturn" />
|
|
|
|
|
|
|
|
<!-- Checks for class design -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_design.html -->
|
|
|
|
<module name="DesignForExtension">
|
|
|
|
<property name="severity" value="ignore" />
|
|
|
|
</module>
|
|
|
|
<module name="FinalClass" />
|
|
|
|
<module name="HideUtilityClassConstructor" />
|
|
|
|
<module name="InterfaceIsType" />
|
|
|
|
<module name="VisibilityModifier">
|
|
|
|
<property name="severity" value="ignore" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Miscellaneous other checks. -->
|
|
|
|
<!-- See http://checkstyle.sf.net/config_misc.html -->
|
|
|
|
<module name="ArrayTypeStyle" />
|
|
|
|
<module name="FinalParameters">
|
|
|
|
<property name="severity" value="ignore" />
|
|
|
|
</module>
|
|
|
|
<module name="TodoComment">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
<module name="UpperEll">
|
|
|
|
<property name="severity" value="warning" />
|
|
|
|
</module>
|
|
|
|
|
|
|
|
<!-- Check for System.err/out.println -->
|
|
|
|
<module name="RegexpSinglelineJava">
|
|
|
|
<property name="format" value="System\.out\.println"/>
|
|
|
|
</module>
|
|
|
|
<module name="RegexpSinglelineJava">
|
|
|
|
<property name="format" value="System\.err\.println"/>
|
|
|
|
</module>
|
|
|
|
|
|
|
|
</module>
|
|
|
|
|
|
|
|
</module>
|