All Downloads are FREE. Search and download functionalities are using the official Maven repository.

codestyle.checkstyle.xml Maven / Gradle / Ivy

The newest version!
<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (c) jGuru Europe AB.
  ~ All rights reserved.
  -->

<!DOCTYPE module PUBLIC
        "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
        "http://checkstyle.sourceforge.net/dtds/configuration_1_3.dtd">

<module name="Checker">

    <!--
        Enable annotations and comments to suppress errors and warnings.
    -->
    <module name="SuppressWarningsFilter"/>

    <module name="LineLength">
        <property name="max" value="120"/>
    </module>

    <!--
        Define the file extensions for which this Checkstyle specification is valid.
    -->
    <property name="charset" value="UTF-8"/>
    <property name="fileExtensions" value="java, properties, xml"/>
    <property name="severity" value="warning" default="error"/>

    <module name="TreeWalker">

        <module name="MissingJavadocMethod">
            <property name="scope" value="public"/>
            <property name="tokens" value="METHOD_DEF"/>
            <property name="allowMissingPropertyJavadoc" value="true"/>
        </module>

        <module name="JavadocStyle">
            <property name="checkFirstSentence" value="false"/>
            <property name="checkHtml" value="false"/>
        </module>

        <module name="ConstantName">
            <property name="format" value="(^[A-Z][A-Z0-9_]*$)|log"/>
        </module>
        <module name="LocalFinalVariableName">
            <property name="format" value="(^[a-z][a-zA-Z0-9]*$)|(^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$)"/>
        </module>
        <module name="LocalVariableName"/>
        <module name="MemberName"/>
        <module name="MethodName"/>
        <module name="PackageName"/>
        <module name="ParameterName"/>
        <module name="StaticVariableName"/>
        <module name="TypeName"/>
        <module name="AvoidStarImport">
            <property name="severity" value="error"/>
        </module>
        <module name="JavaNCSS"/>

        <!--
            Enforce correct logging mechanics in release artifacts.
        -->
        <module name="IllegalImport">
            <property name="severity" value="error"/>
            <property name="illegalPkgs"
                      value="java.util.logging, org.jboss.logging, org.apache.log4j, org.apache.commons.logging"/>
        </module>

        <!--
            We should not use Calendar or Date types in any public method.
            They could be used internally - and only within model classes to cope with JPA time types -
            but not within parameters or return types.
        -->
        <module name="IllegalType">
            <property name="severity" value="error"/>
            <property name="tokens" value="PARAMETER_DEF, METHOD_DEF"/>
            <property name="illegalClassNames"
                      value="java.util.GregorianCalendar, java.util.Calendar, java.util.Date, java.util.Vector, java.util.Properties"/>
        </module>

        <!--
            Validate that we don't use the System.out or err in the code.
            Use proper logging instead.
        -->
        <module name="Regexp">
            <property name="message" value="System.exit"/>
            <property name="severity" value="warning"/>
            <property name="format" value="System\.exit"/>
            <property name="illegalPattern" value="true"/>
        </module>
        <module name="Regexp">
            <property name="message" value="System.out"/>
            <property name="severity" value="warning"/>
            <property name="format" value="System\.out."/>
            <property name="illegalPattern" value="true"/>
        </module>
        <module name="Regexp">
            <property name="message" value="System.err"/>
            <property name="severity" value="warning"/>
            <property name="format" value="System\.err."/>
            <property name="illegalPattern" value="true"/>
        </module>

        <module name="RedundantImport"/>
        <module name="UnusedImports"/>
        <module name="MethodLength"/>
        <module name="ParameterNumber">
            <property name="max" value="5"/>
            <property name="tokens" value="METHOD_DEF"/>
        </module>

        <module name="EmptyForIteratorPad"/>
        <module name="MethodParamPad"/>
        <module name="OperatorWrap"/>
        <module name="ParenPad"/>
        <module name="TypecastParenPad"/>
        <module name="WhitespaceAfter"/>
        <module name="ModifierOrder"/>
        <module name="AvoidNestedBlocks"/>
        <module name="EmptyBlock">
            <property name="option" value="text"/>
        </module>
        <module name="LeftCurly"/>
        <module name="NeedBraces"/>
        <module name="RightCurly"/>
        <module name="EmptyStatement"/>
        <module name="EqualsHashCode"/>
        <module name="IllegalInstantiation"/>
        <module name="InnerAssignment"/>
        <module name="MagicNumber"/>
        <module name="MissingSwitchDefault"/>
        <!-- RedundantThrows was removed in Checkstyle 6.2 -->
        <!-- module name="RedundantThrows">
            <property name="allowUnchecked" value="true"/>
            <property name="allowSubclasses" value="true"/>
        </module -->
        <module name="SimplifyBooleanExpression"/>
        <module name="SimplifyBooleanReturn"/>
        <module name="FinalClass"/>
        <module name="HideUtilityClassConstructor"/>
        <module name="InterfaceIsType"/>
        <module name="VisibilityModifier">
            <property name="packageAllowed" value="true"/>
            <property name="protectedAllowed" value="true"/>
        </module>
        <module name="ArrayTypeStyle"/>
        <module name="FinalParameters"/>
        <module name="UpperEll"/>
        <module name="JavadocType">
            <property name="excludeScope" value="private"/>
            <property name="scope" value="public"/>
            <property name="authorFormat" value="\S"/>
            <property name="tokens" value="INTERFACE_DEF"/>
        </module>
        <module name="FallThrough"/>
        <module name="DefaultComesLast"/>
        <module name="ReturnCount">
            <property name="format" value="^equals$|^compareTo$"/>
            <property name="max" value="3"/>
        </module>

        <!--
            Enable suppression of errors and warnings.
            Make the @SuppressWarnings annotations available to Checkstyle
        -->
        <module name="SuppressWarningsHolder"/>
        <module name="SuppressWarnings">
            <property name="id" value="checkstyle:suppresswarnings"/>
        </module>
    </module>

    <module name="FileLength"/>
    <module name="FileTabCharacter"/>
    <module name="Translation"/>
</module>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy