<?xml version="1.0" encoding="UTF-8"?>
<!--
    This configuration file was written by the eclipse-cs plugin configuration editor
-->
<!--
    Checkstyle-Configuration: topcased_checkstyle.xml
    Description: none
-->
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.2//EN" "http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
<module name="Checker">
    <property name="severity" value="warning"/>
    <module name="TreeWalker">
        <module name="ArrayTypeStyle"/>
        <module name="ModifierOrder"/>
        <module name="RedundantModifier"/>
        <module name="TodoComment"/>
        <module name="UpperEll"/>
        <module name="AvoidNestedBlocks"/>
        <module name="CovariantEquals"/>
        <module name="DeclarationOrder"/>
        <module name="DefaultComesLast"/>
        <module name="DoubleCheckedLocking"/>
        <module name="EmptyStatement"/>
        <module name="EqualsHashCode"/>
        <module name="HiddenField">
            <property name="ignoreConstructorParameter" value="true"/>
            <property name="ignoreSetter" value="true"/>
        </module>
        <module name="IllegalCatch"/>
        <module name="IllegalInstantiation"/>
        <module name="InnerAssignment"/>
        <module name="MissingSwitchDefault"/>
        <module name="ModifiedControlVariable"/>
        <module name="MultipleVariableDeclarations"/>
        <module name="RedundantThrows"/>
        <module name="SimplifyBooleanExpression"/>
        <module name="SimplifyBooleanReturn"/>
        <module name="FinalClass"/>
        <module name="HideUtilityClassConstructor"/>
        <module name="VisibilityModifier"/>
        <module name="AvoidStarImport"/>
        <module name="IllegalImport"/>
        <module name="RedundantImport"/>
        <module name="UnusedImports"/>
        <module name="JavadocStyle">
            <property name="checkFirstSentence" value="false"/>
        </module>
        <module name="JavadocType"/>
        <module name="NPathComplexity"/>
        <module name="ConstantName">
            <property name="format" value="^[A-Z](_?[A-Z0-9]+)*$"/>
        </module>
        <module name="LocalFinalVariableName"/>
        <module name="LocalVariableName"/>
        <module name="MemberName"/>
        <module name="MethodName"/>
        <module name="PackageName">
            <property name="format" value="^[a-z]+(\.[a-z_][a-z0-9_]*)*$"/>
        </module>
        <module name="ParameterName"/>
        <module name="StaticVariableName"/>
        <module name="TypeName"/>
        <module name="AnonInnerLength"/>
        <module name="FileLength"/>
        <module name="LineLength">
            <property name="max" value="300"/>
        </module>
        <module name="MethodLength">
            <property name="countEmpty" value="false"/>
            <property name="tokens" value="METHOD_DEF, CTOR_DEF"/>
        </module>
        <module name="ParameterNumber">
            <property name="tokens" value="METHOD_DEF, CTOR_DEF"/>
        </module>
        <module name="EmptyBlock"/>
        <module name="NeedBraces"/>
        <module name="IllegalThrows"/>
        <module name="FallThrough"/>
        <module name="NestedIfDepth">
            <property name="max" value="4"/>
        </module>
        <module name="NestedTryDepth"/>
        <module name="PackageDeclaration"/>
        <module name="ParameterAssignment"/>
        <module name="StringLiteralEquality"/>
        <module name="SuperClone"/>
        <module name="SuperFinalize"/>
        <module name="UnnecessaryParentheses"/>
        <module name="MutableException"/>
        <module name="BooleanExpressionComplexity"/>
        <module name="ClassDataAbstractionCoupling">
            <property name="severity" value="ignore"/>
        </module>
        <module name="ClassFanOutComplexity">
            <property name="severity" value="ignore"/>
        </module>
        <module name="JavaNCSS">
            <property name="methodMaximum" value="100"/>
        </module>
        <module name="CyclomaticComplexity"/>
    </module>
</module>
