<?xml version="1.0" encoding="UTF-8"?>
<!--
	This configuration file was written by the eclipse-cs plugin configuration editor
-->
<!--
Checkstyle-Configuration: Indus
Description:

-->
<!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">
        <property name="tabWidth" value="4"/>
        <module name="ArrayTypeStyle"/>
        <module name="FinalParameters">
            <property name="tokens" value="METHOD_DEF, CTOR_DEF"/>
        </module>
        <module name="GenericIllegalRegexp">
            <property name="format" value="DOCUMENT ME"/>
            <property name="message" value="Please fill in the documentation."/>
        </module>
        <module name="ModifierOrder"/>
        <module name="RedundantModifier">
            <property name="tokens" value="METHOD_DEF, VARIABLE_DEF"/>
        </module>
        <module name="TodoComment">
            <property name="severity" value="info"/>
        </module>
        <module name="UncommentedMain">
            <property name="excludedClasses" value="^.*[Driver|Test|TestSuite|XMLizer|CLI]$"/>
        </module>
        <module name="UpperEll"/>
        <module name="AvoidNestedBlocks"/>
        <module name="EmptyBlock">
            <property name="tokens" value="LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_IF, LITERAL_FOR, LITERAL_TRY, LITERAL_WHILE, STATIC_INIT"/>
        </module>
        <module name="LeftCurly">
            <property name="maxLineLength" value="126"/>
            <property name="tokens" value="CLASS_DEF, CTOR_DEF, INTERFACE_DEF, LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF, LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, METHOD_DEF"/>
        </module>
        <module name="NeedBraces">
            <property name="tokens" value="LITERAL_DO, LITERAL_ELSE, LITERAL_IF, LITERAL_FOR, LITERAL_WHILE"/>
        </module>
        <module name="RightCurly">
            <property name="tokens" value="LITERAL_CATCH, LITERAL_ELSE, LITERAL_TRY"/>
        </module>
        <module name="ArrayTrailingComma"/>
        <module name="AvoidInlineConditionals">
            <property name="severity" value="info"/>
        </module>
        <module name="CovariantEquals"/>
        <module name="DeclarationOrder"/>
        <module name="DefaultComesLast"/>
        <module name="DoubleCheckedLocking"/>
        <module name="EqualsHashCode"/>
        <module name="ExplicitInitialization"/>
        <module name="FallThrough"/>
        <module name="FinalLocalVariable"/>
        <module name="HiddenField">
            <property name="tokens" value="PARAMETER_DEF, VARIABLE_DEF"/>
        </module>
        <module name="IllegalCatch">
            <property name="severity" value="info"/>
        </module>
        <module name="IllegalInstantiation">
            <property name="classes" value="java.lang.Boolean"/>
        </module>
        <module name="IllegalType">
            <property name="tokens" value="METHOD_DEF, PARAMETER_DEF, VARIABLE_DEF"/>
        </module>
        <module name="InnerAssignment">
            <property name="tokens" value="ASSIGN, BAND_ASSIGN, BOR_ASSIGN, BSR_ASSIGN, BXOR_ASSIGN, DIV_ASSIGN, MINUS_ASSIGN, MOD_ASSIGN, PLUS_ASSIGN, SL_ASSIGN, SR_ASSIGN, STAR_ASSIGN"/>
        </module>
        <module name="JUnitTestCase">
            <property name="severity" value="info"/>
        </module>
        <module name="MagicNumber">
            <property name="ignoreNumbers" value="-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 17, 37, 100, 500, 1000, 5000, 10000"/>
            <property name="tokens" value="NUM_DOUBLE, NUM_FLOAT, NUM_INT, NUM_LONG"/>
        </module>
        <module name="MissingCtor">
            <property name="severity" value="info"/>
        </module>
        <module name="MissingSwitchDefault"/>
        <module name="ModifiedControlVariable"/>
        <module name="MultipleStringLiterals">
            <property name="severity" value="info"/>
            <property name="allowedDuplicates" value="3"/>
        </module>
        <module name="NestedIfDepth">
            <property name="severity" value="info"/>
            <property name="max" value="2"/>
        </module>
        <module name="NestedTryDepth"/>
        <module name="PackageDeclaration"/>
        <module name="ParameterAssignment"/>
        <module name="RedundantThrows">
            <property name="allowUnchecked" value="true"/>
        </module>
        <module name="ReturnCount"/>
        <module name="SimplifyBooleanExpression"/>
        <module name="SimplifyBooleanReturn"/>
        <module name="StringLiteralEquality"/>
        <module name="SuperClone"/>
        <module name="SuperFinalize"/>
        <module name="UnnecessaryParentheses"/>
        <module name="FinalClass"/>
        <module name="HideUtilityClassConstructor"/>
        <module name="InterfaceIsType"/>
        <module name="MutableException"/>
        <module name="ThrowsCount">
            <property name="max" value="3"/>
        </module>
        <module name="VisibilityModifier">
            <property name="packageAllowed" value="true"/>
            <property name="protectedAllowed" value="true"/>
        </module>
        <module name="AvoidStarImport"/>
        <module name="IllegalImport"/>
        <module name="ImportOrder">
            <property name="groups" value="com,edu,gnu,java,javax,junit,net,org,soot"/>
            <property name="separated" value="true"/>
        </module>
        <module name="RedundantImport"/>
        <module name="UnusedImports"/>
        <module name="JavadocMethod">
            <property name="allowUndeclaredRTE" value="true"/>
            <property name="allowThrowsTagsForSubclasses" value="true"/>
        </module>
        <module name="JavadocStyle"/>
        <module name="JavadocType">
            <property name="tokens" value="CLASS_DEF, INTERFACE_DEF"/>
        </module>
        <module name="JavadocVariable"/>
        <module name="BooleanExpressionComplexity">
            <property name="severity" value="info"/>
        </module>
        <module name="ClassDataAbstractionCoupling">
            <property name="severity" value="info"/>
            <property name="max" value="15"/>
        </module>
        <module name="ClassFanOutComplexity">
            <property name="severity" value="info"/>
            <property name="max" value="30"/>
        </module>
        <module name="CyclomaticComplexity">
            <property name="max" value="14"/>
        </module>
        <module name="JavaNCSS">
            <property name="severity" value="info"/>
        </module>
        <module name="NPathComplexity">
            <property name="severity" value="info"/>
        </module>
        <module name="AbstractClassName"/>
        <module name="ConstantName">
            <property name="format" value="^[A-Z](_?[A-Z0-9]+)*$"/>
        </module>
        <module name="LocalFinalVariableName">
            <property name="format" value="^_[a-z][a-zA-Z0-9]*$"/>
        </module>
        <module name="LocalVariableName">
            <property name="format" value="^_[a-z][a-zA-Z0-9]*$"/>
        </module>
        <module name="MemberName"/>
        <module name="MethodName"/>
        <module name="PackageName"/>
        <module name="ParameterName"/>
        <module name="StaticVariableName"/>
        <module name="TypeName">
            <property name="tokens" value="CLASS_DEF"/>
        </module>
        <module name="TypeName">
            <property name="format" value="^I[A-Z][a-zA-Z0-9]*$"/>
            <property name="tokens" value="INTERFACE_DEF"/>
        </module>
        <module name="AnonInnerLength">
            <property name="max" value="600"/>
        </module>
        <module name="ExecutableStatementCount">
            <property name="max" value="260"/>
            <property name="tokens" value="INSTANCE_INIT, STATIC_INIT, METHOD_DEF, CTOR_DEF"/>
        </module>
        <module name="FileLength">
            <property name="max" value="2600"/>
        </module>
        <module name="LineLength">
            <property name="severity" value="info"/>
            <property name="max" value="126"/>
        </module>
        <module name="MethodLength">
            <property name="max" value="260"/>
            <property name="tokens" value="METHOD_DEF, CTOR_DEF"/>
        </module>
        <module name="ParameterNumber">
            <property name="tokens" value="METHOD_DEF, CTOR_DEF"/>
        </module>
        <module name="EmptyForInitializerPad"/>
        <module name="EmptyForIteratorPad"/>
        <module name="MethodParamPad">
            <property name="allowLineBreaks" value="true"/>
            <property name="tokens" value="CTOR_DEF, LITERAL_NEW, METHOD_CALL, METHOD_DEF, SUPER_CTOR_CALL"/>
        </module>
        <module name="NoWhitespaceAfter">
            <property name="tokens" value="BNOT, DEC, DOT, INC, LNOT, UNARY_MINUS, UNARY_PLUS"/>
        </module>
        <module name="NoWhitespaceBefore"/>
        <module name="OperatorWrap">
            <property name="tokens" value="BAND, BAND_ASSIGN, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR, BXOR_ASSIGN, COLON, DIV, DIV_ASSIGN, EQUAL, GE, GT, LAND, LE, LITERAL_INSTANCEOF, LOR, LT, MINUS, MINUS_ASSIGN, MOD, MOD_ASSIGN, NOT_EQUAL, PLUS, PLUS_ASSIGN, QUESTION, SL, SL_ASSIGN, SR, SR_ASSIGN, STAR, STAR_ASSIGN"/>
        </module>
        <module name="ParenPad">
            <property name="tokens" value="CTOR_CALL, LPAREN, METHOD_CALL, RPAREN, SUPER_CTOR_CALL"/>
        </module>
        <module name="TypecastParenPad">
            <property name="tokens" value="RPAREN, TYPECAST"/>
        </module>
        <module name="WhitespaceAfter">
            <property name="tokens" value="COMMA, SEMI, TYPECAST"/>
        </module>
        <module name="WhitespaceAround">
            <property name="tokens" value="ASSIGN, BAND, BAND_ASSIGN, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR, BXOR_ASSIGN, COLON, DIV, DIV_ASSIGN, EQUAL, GE, GT, LAND, LCURLY, LE, LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF, LITERAL_RETURN, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, LOR, LT, MINUS, MINUS_ASSIGN, MOD, MOD_ASSIGN, NOT_EQUAL, PLUS, PLUS_ASSIGN, QUESTION, RCURLY, SL, SLIST, SL_ASSIGN, SR, SR_ASSIGN, STAR, STAR_ASSIGN"/>
        </module>
        <module name="MultipleVariableDeclarations"/>
        <module name="Indentation">
            <property name="severity" value="ignore"/>
        </module>
        <module name="TrailingComment"/>
        <module name="EmptyStatement"/>
        <module name="IllegalThrows"/>
    </module>
    <module name="StrictDuplicateCode">
        <metadata name="com.atlassw.tools.eclipse.checkstyle.lastEnabledSeverity" value="ignore"/>
        <property name="severity" value="info"/>
        <property name="min" value="30"/>
    </module>
    <module name="NewlineAtEndOfFile"/>
    <module name="PackageHtml"/>
</module>
