<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">

<!--
    This configuration file was written by the eclipse-cs plugin configuration editor
-->
<!--
    Checkstyle-Configuration: Victoria
    Description: none
-->
<module name="Checker">
  <property name="severity" value="warning"/>
  <module name="TreeWalker">
    <module name="FileContentsHolder"/>
    <module name="JavadocMethod">
      <property name="allowUndeclaredRTE" value="true"/>
      <property name="allowThrowsTagsForSubclasses" value="true"/>
      <property name="allowMissingParamTags" value="true"/>
      <property name="allowMissingThrowsTags" value="true"/>
      <property name="allowMissingReturnTag" value="true"/>
      <property name="allowMissingJavadoc" value="true"/>
      <property name="allowMissingPropertyJavadoc" value="true"/>
      <property name="logLoadErrors" value="true"/>
      <property name="suppressLoadErrors" value="true"/>
    </module>
    <module name="JavadocStyle"/>
    <module name="JavadocType">
      <property name="excludeScope" value="public"/>
      <property name="scope" value="nothing"/>
    </module>
    <module name="JavadocVariable">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="WriteTag">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="LineLength">
      <property name="max" value="121"/>
      <property name="tabWidth" value="4"/>
    </module>
    <module name="RightCurly">
      <property name="option" value="alone"/>
    </module>
    <module name="LeftCurly">
      <property name="option" value="nl"/>
      <property name="maxLineLength" value="120"/>
    </module>
    <module name="PackageAnnotation"/>
    <module name="MissingDeprecated"/>
    <module name="AnnotationUseStyle"/>
    <module name="ClassTypeParameterName">
      <property name="format" value="^[A-Z][A-Za-z]*$"/>
    </module>
    <module name="ConstantName">
      <message key="name.invalidPattern" value="Static constant ''{0}'' must be uppercase (must match &quot;{1}&quot;)"/>
    </module>
    <module name="LocalFinalVariableName"/>
    <module name="LocalVariableName"/>
    <module name="MemberName"/>
    <module name="MethodName"/>
    <module name="MethodTypeParameterName">
      <property name="format" value="^[A-Z][A-Za-z]*$"/>
    </module>
    <module name="PackageName"/>
    <module name="ParameterName"/>
    <module name="StaticVariableName"/>
    <module name="TypeName"/>
    <module name="AvoidStarImport"/>
    <module name="IllegalImport">
      <message key="import.illegal" value="Import from non-standard package - {0}."/>
    </module>
    <module name="RedundantImport"/>
    <module name="AnonInnerLength"/>
    <module name="ExecutableStatementCount">
      <property name="severity" value="ignore"/>
      <property name="tokens" value="INSTANCE_INIT,STATIC_INIT,METHOD_DEF,CTOR_DEF"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="MethodLength"/>
    <module name="ParameterNumber">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="OuterTypeNumber"/>
    <module name="EmptyForInitializerPad"/>
    <module name="EmptyForIteratorPad"/>
    <module name="NoWhitespaceAfter">
      <property name="severity" value="ignore"/>
      <property name="tokens" value="BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="NoWhitespaceBefore">
      <property name="severity" value="ignore"/>
      <property name="tokens" value="POST_DEC,POST_INC"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="MethodParamPad">
      <property name="allowLineBreaks" value="true"/>
    </module>
    <module name="ParenPad">
      <property name="tokens" value="CTOR_CALL,METHOD_CALL,SUPER_CTOR_CALL"/>
    </module>
    <module name="TypecastParenPad">
      <property name="tokens" value="RPAREN,TYPECAST"/>
    </module>
    <module name="WhitespaceAfter"/>
    <module name="WhitespaceAround">
      <property name="allowEmptyConstructors" value="true"/>
      <property name="allowEmptyMethods" value="true"/>
    </module>
    <module name="ModifierOrder"/>
    <module name="RedundantModifier"/>
    <module name="NeedBraces"/>
    <module name="EmptyBlock">
      <property name="option" value="text"/>
    </module>
    <module name="AvoidNestedBlocks">
      <property name="allowInSwitchCase" value="true"/>
    </module>
    <module name="DefaultComesLast"/>
    <module name="DoubleCheckedLocking"/>
    <module name="EmptyStatement"/>
    <module name="EqualsHashCode"/>
    <module name="ExplicitInitialization"/>
    <module name="FallThrough"/>
    <module name="FinalLocalVariable">
      <property name="tokens" value="PARAMETER_DEF,VARIABLE_DEF"/>
    </module>
    <module name="HiddenField">
      <property name="ignoreConstructorParameter" value="true"/>
      <property name="ignoreSetter" value="true"/>
      <property name="ignoreAbstractMethods" value="true"/>
    </module>
    <module name="IllegalCatch">
      <property name="illegalClassNames" value="java.lang.Exception, java.lang.Throwable, java.lang.Error"/>
    </module>
    <module name="IllegalThrows"/>
    <module name="IllegalType">
      <property name="tokens" value="METHOD_DEF,PARAMETER_DEF,VARIABLE_DEF"/>
    </module>
    <module name="InnerAssignment"/>
    <module name="ModifiedControlVariable"/>
    <module name="MultipleStringLiterals">
      <property name="allowedDuplicates" value="2"/>
      <property name="ignoreStringsRegexp" value="^&quot;[^&quot;]?&quot;$"/>
      <property name="ignoreOccurrenceContext" value="METHOD_CALL,CTOR_CALL,LITERAL_THROW,ANNOTATION"/>
    </module>
    <module name="MultipleVariableDeclarations"/>
    <module name="NestedIfDepth">
      <property name="max" value="2"/>
    </module>
    <module name="NestedTryDepth"/>
    <module name="NoFinalizer"/>
    <module name="PackageDeclaration"/>
    <module name="ParameterAssignment"/>
    <module name="RedundantThrows">
      <property name="allowSubclasses" value="true"/>
      <property name="logLoadErrors" value="true"/>
      <property name="suppressLoadErrors" value="true"/>
    </module>
    <module name="SimplifyBooleanExpression"/>
    <module name="SimplifyBooleanReturn"/>
    <module name="StringLiteralEquality"/>
    <module name="SuperClone"/>
    <module name="SuperFinalize"/>
    <module name="ArrayTrailingComma"/>
    <module name="HideUtilityClassConstructor"/>
    <module name="MutableException">
      <property name="format" value="^.+Exception$|^.+Error$"/>
    </module>
    <module name="ArrayTypeStyle"/>
    <module name="FinalParameters">
      <property name="tokens" value="METHOD_DEF,CTOR_DEF,LITERAL_CATCH"/>
    </module>
    <module name="UncommentedMain"/>
    <module name="UpperEll"/>
    <module name="NestedIfDepth">
      <property name="max" value="2"/>
    </module>
  </module>
  <module name="JavadocPackage">
    <property name="severity" value="ignore"/>
    <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
  </module>
  <module name="RegexpSingleline">
    <metadata name="net.sf.eclipsecs.core.comment" value="Prevent trailing whitespace on lines, which confuses version-control systems"/>
    <property name="severity" value="warning"/>
    <property name="id" value="line-only-contains-whitespace"/>
    <property name="format" value="^\s\s*$"/>
    <property name="message" value="Blank lines should not contain whitespace"/>
  </module>
  <module name="RegexpSingleline">
    <metadata name="net.sf.eclipsecs.core.comment" value="Prevent trailing whitespace on lines (except in empty Javadoc lines), which confuses version-control systems"/>
    <property name="severity" value="warning"/>
    <property name="id" value="trailing-whitespace"/>
    <property name="format" value="[^*]\s$"/>
    <property name="message" value="Trailing whitespace is not permitted"/>
  </module>
  <module name="SuppressionCommentFilter">
    <metadata name="net.sf.eclipsecs.core.comment" value="Disable checkstyle for anything generated by Hibernate"/>
    <property name="offCommentFormat" value="Generated [0-9][0-9]?-[A-Z][a-z][a-z]-2[0-9][0-9][0-9] [012][0-9]:[0-5][0-9]:[0-6][0-9] by Hibernate Tools [0-9][0-9.GA]*$"/>
    <property name="checkC" value="false"/>
  </module>
  <module name="FileLength"/>
  <module name="NewlineAtEndOfFile">
    <property name="severity" value="ignore"/>
    <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
  </module>
  <module name="SuppressWithNearbyCommentFilter">
    <property name="commentFormat" value="S[Uu][Pp][Pp][Rr][Ee][Ss][Ss] ?C[Hh][Ee][Cc][Kk][Ss][Tt][Yy][Ll][Ee]([+-]\d+) (\w+)"/>
    <property name="checkFormat" value=".*"/>
    <property name="messageFormat" value="$2"/>
    <property name="influenceFormat" value="$1"/>
    <property name="checkCPP" value="false"/>
  </module>
</module>

