123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279 |
- <?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)
- - Modified the severity of the following Checks from error to warning and the scope from private to protected:
- • JavadocType (class and interface declarations)
- • JavadocMethod (method declarations)
- • JavadocVariable (variable declarations)
- • 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>
- <module name="RegexpMultiline">
- <property name="message"
- value="File contains carriage return (Windows newlines)" />
- <property name="format" value="\r" />
- </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" />
- <!-- ignore empty lines that may or may not have trailing white-space -->
- <property name="ignoreLines" value="3, 7, 9"/>
- </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="warning" />
- <property name="scope" value="protected" />
- </module>
- <module name="JavadocType">
- <property name="severity" value="warning" />
- <property name="scope" value="protected" />
- </module>
- <module name="JavadocVariable">
- <property name="severity" value="warning" />
- <property name="scope" value="protected" />
- </module>
- <module name="JavadocStyle">
- <property name="severity" value="warning" />
- <property name="scope" value="protected" />
- </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" />
- <!--
- <module name="ImportControl">
- <property name="file" value="${checkstyle.importControl.file}" />
- <property name="severity" value="error" />
- </module>
- -->
-
- <!-- 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">
- <property name="tokens" value="BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS"/>
- </module>
- <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="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>
|