<?xml version="1.0" encoding="UTF-8"?>
<!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>
		<module name="DescendantToken">
			<property name="severity" value="ignore" />
		</module>
		<module name="FinalParameters">
			<property name="severity" value="ignore" />
			<property name="tokens" value="METHOD_DEF, CTOR_DEF" />
		</module>
		<module name="GenericIllegalRegexp">
			<property name="severity" value="error" />
			<property name="format" value="System\.out\.println\(" />
			<property name="message" value="Avoid System.out.println(), use log.debug()" />
		</module>
		<module name="GenericIllegalRegexp">
			<property name="severity" value="error" />
			<property name="format" value="\.printStackTrace\(\)" />
			<property name="message" value="Avoid exception.printStackTrace()" />
		</module>
		<module name="TodoComment">
			<property name="severity" value="ignore" />
			<property name="format" value="@todo" />
		</module>
		<module name="UncommentedMain"></module>
		<module name="UpperEll"></module>
		<module name="AvoidNestedBlocks"></module>
		<module name="EmptyBlock">
			<property name="option" value="text" />
			<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="option" value="nl" />
			<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="option" value="alone" />
			<property name="tokens" value="LITERAL_CATCH, LITERAL_ELSE, LITERAL_TRY" />
		</module>
		<module name="ArrayTrailingComma">
			<property name="severity" value="ignore" />
		</module>
		<module name="AvoidInlineConditionals">
			<property name="severity" value="ignore" />
		</module>
		<module name="CovariantEquals"></module>
		<module name="DeclarationOrder">
			<property name="severity" value="info" />
		</module>
		<module name="DoubleCheckedLocking"></module>
		<module name="EmptyStatement"></module>
		<module name="EqualsHashCode"></module>
		<module name="ExplicitInitialization"></module>
		<module name="FinalLocalVariable">
			<property name="severity" value="ignore" />
		</module>
		<module name="HiddenField"></module>
		<module name="IllegalCatch">
			<property name="severity" value="info" />
		</module>
		<module name="IllegalInstantiation"></module>
		<module name="IllegalToken">
			<property name="severity" value="ignore" />
		</module>
		<module name="IllegalTokenText">
			<property name="severity" value="ignore" />
		</module>
		<module name="IllegalType">
			<property name="tokens" value="METHOD_DEF, PARAMETER_DEF, VARIABLE_DEF" />
		</module>
		<module name="InnerAssignment">
			<property name="severity" value="info" />
			<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"></module>
		<module name="MagicNumber">
			<property name="severity" value="ignore" />
			<property name="tokens" value="NUM_DOUBLE, NUM_FLOAT, NUM_INT, NUM_LONG" />
		</module>
		<module name="MissingSwitchDefault"></module>
		<module name="NestedIfDepth">
			<property name="severity" value="info" />
			<property name="max" value="3" />
		</module>
		<module name="NestedTryDepth">
			<property name="severity" value="info" />
			<property name="max" value="2" />
		</module>
		<module name="PackageDeclaration"></module>
		<module name="ParameterAssignment"></module>
		<module name="RedundantThrows">
			<property name="severity" value="ignore" />
		</module>
		<module name="ReturnCount">
			<property name="severity" value="info" />
			<property name="max" value="3" />
		</module>
		<module name="SimplifyBooleanExpression"></module>
		<module name="SimplifyBooleanReturn"></module>
		<module name="StringLiteralEquality"></module>
		<module name="SuperClone">
			<property name="severity" value="info" />
		</module>
		<module name="SuperFinalize"></module>
		<module name="DesignForExtension">
			<property name="severity" value="ignore" />
		</module>
		<module name="FinalClass"></module>
		<module name="HideUtilityClassConstructor"></module>
		<module name="InterfaceIsType"></module>
		<module name="MutableException">
			<property name="severity" value="ignore" />
		</module>
		<module name="ThrowsCount">
			<property name="max" value="5" />
		</module>
		<module name="VisibilityModifier">
			<property name="packageAllowed" value="true" />
			<property name="protectedAllowed" value="true" />
		</module>
		<module name="AvoidStarImport"></module>
		<module name="IllegalImport"></module>
		<module name="ImportOrder">
			<property name="severity" value="ignore" />
		</module>
		<module name="RedundantImport"></module>
		<module name="UnusedImports"></module>
		<module name="Indentation">
			<property name="severity" value="ignore" />
		</module>
		<module name="JavadocMethod">
			<property name="tokens" value="METHOD_DEF, CTOR_DEF" />
		</module>
		<module name="JavadocStyle">
			<property name="severity" value="info" />
			<property name="tokens" value="INTERFACE_DEF, CLASS_DEF, METHOD_DEF, CTOR_DEF, VARIABLE_DEF" />
		</module>
		<module name="JavadocType">
			<property name="authorFormat" value="^[a-zA-Z @\.]*$" />
			<property name="versionFormat" value="(^\$A_Zevision\:)*(\(\$A-Zuthor: )*(\$\))$" />
			<property name="tokens" value="CLASS_DEF, INTERFACE_DEF" />
		</module>
		<module name="JavadocVariable"></module>
		<module name="CyclomaticComplexity">
			<property name="severity" value="info" />
			<property name="max" value="13" />
		</module>
		<module name="AbstractClassName">
			<property name="severity" value="ignore" />
		</module>
		<module name="ConstantName"></module>
		<module name="LocalFinalVariableName">
			<property name="format" value="^[A-Z0-9_]*$" />
		</module>
		<module name="LocalVariableName">
			<property name="severity" value="info" />
			<property name="format" value="(^[a-z][a-z][a-zA-Z0-9]*$)|(^[a-z]$)" />
		</module>
		<module name="MemberName">
			<property name="severity" value="info" />
			<property name="format" value="(^([a-z][a-z])([a-zA-Z0-9]*)$)|(^[a-z]$)" />
		</module>
		<module name="MethodName"></module>
		<module name="PackageName">
			<property name="format" value="^[a-z]+(\.[a-z][a-z]*)*$" />
		</module>
		<module name="ParameterName">
			<property name="severity" value="info" />
			<property name="format" value="(^[a-z][a-z][a-zA-Z0-9]*$)|(^[a-z]$)" />
		</module>
		<module name="StaticVariableName"></module>
		<module name="TypeName"></module>
		<module name="AnonInnerLength"></module>
		<module name="ExecutableStatementCount">
			<property name="severity" value="info" />
			<property name="tokens" value="INSTANCE_INIT, STATIC_INIT, METHOD_DEF, CTOR_DEF" />
		</module>
		<module name="FileLength"></module>
		<module name="LineLength">
			<property name="max" value="120" />
		</module>
		<module name="MethodLength"></module>
		<module name="ParameterNumber"></module>
		<module name="usage.OneMethodPrivateField">
			<property name="severity" value="ignore" />
			<property name="ignoreFormat" value="^log$" />
		</module>
		<module name="usage.UnusedLocalVariable"></module>
		<module name="usage.UnusedParameter">
			<property name="severity" value="ignore" />
		</module>
		<module name="usage.UnusedPrivateField">
			<property name="ignoreFormat" value="^serialVersionUID$" />
		</module>
		<module name="usage.UnusedPrivateMethod"></module>
		<module name="EmptyForIteratorPad"></module>
		<module name="NoWhitespaceAfter">
			<property name="tokens" value="BNOT, DEC, DOT, INC, LNOT, UNARY_MINUS, UNARY_PLUS" />
		</module>
		<module name="NoWhitespaceBefore"></module>
		<module name="OperatorWrap"></module>
		<module name="ParenPad"></module>
		<module name="TabCharacter"></module>
		<module name="TypecastParenPad">
			<property name="tokens" value="RPAREN, TYPECAST" />
		</module>
		<module name="WhitespaceAfter"></module>
		<module name="WhitespaceAround"></module>
		<module name="ModifierOrder"></module>
		<module name="RedundantModifier"></module>
	</module>
</module>

