<?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: ESMCheckstyleTest
    Description: none
-->
<module name="Checker">
  <property name="severity" value="warning"/>
  <module name="TreeWalker">
    <property name="tabWidth" value="4"/>
    <module name="FileContentsHolder"/>
    <module name="ConstantName"/>
    <module name="LocalFinalVariableName"/>
    <module name="LocalVariableName"/>
    <module name="MemberName"/>
    <module name="MethodName">
      <property name="format" value="^[a-z][a-zA-Z0-9_]*$" />
    </module>
    <module name="PackageName"/>
    <module name="ParameterName"/>
    <module name="StaticVariableName"/>
    <module name="TypeName">
      <property name="format" value="^[A-Z][a-zA-Z0-9_]*$"/>
    </module>
    <module name="AvoidStarImport"/>
    <module name="IllegalImport"/>
    <module name="RedundantImport"/>
    <module name="UnusedImports"/>
    <module name="LineLength">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="MethodLength"/>
    <module name="ParameterNumber"/>
    <module name="EmptyForIteratorPad">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="MethodParamPad">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <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"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="OperatorWrap">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="ParenPad">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="TypecastParenPad">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="WhitespaceAfter">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="WhitespaceAround">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="ModifierOrder"/>
    <module name="RedundantModifier"/>
    <module name="AvoidNestedBlocks">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="EmptyBlock">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="LeftCurly">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="NeedBraces"/>
    <module name="RightCurly">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="AvoidInlineConditionals">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="EmptyStatement"/>
    <module name="EqualsHashCode"/>
    <module name="HiddenField">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="IllegalInstantiation"/>
    <module name="InnerAssignment"/>
    <module name="MagicNumber">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="MissingSwitchDefault"/>
    <module name="SimplifyBooleanExpression"/>
    <module name="SimplifyBooleanReturn"/>
    <module name="DesignForExtension">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="FinalClass"/>
    <module name="HideUtilityClassConstructor"/>
    <module name="InterfaceIsType"/>
    <module name="VisibilityModifier"/>
    <module name="ArrayTypeStyle"/>
    <module name="FinalParameters">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="TodoComment">
      <property name="severity" value="ignore"/>
      <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
    </module>
    <module name="UpperEll"/>
    <module name="BooleanExpressionComplexity">
      <property name="max" value="5"/>
    </module>
    <module name="CyclomaticComplexity">
      <property name="max" value="15"/>
    </module>
    <module name="NPathComplexity">
      <property name="max" value="220"/>
    </module>
    <module name="JavaNCSS"/>
    <module name="SuperClone"/>
    <module name="SuperFinalize"/>
    <module name="PackageDeclaration"/>
    <module name="NestedIfDepth">
      <property name="max" value="2"/>
    </module>
    <module name="IllegalCatch">
      <property name="id" value="IllegalExceptionCatch"/>
    </module>
    <module name="IllegalThrows">
      <property name="illegalClassNames" value="java.lang.Throwable, java.lang.Error, java.lang.RuntimeException, java.lang.Exception"/>
      <property name="ignoredMethodNames" value="finalize, call, start, stop, setUp, tearDown"/>
    </module>
    <module name="CovariantEquals"/>
    <module name="DefaultComesLast"/>
    <module name="ExplicitInitialization"/>
    <module name="FallThrough"/>
    <module name="AnonInnerLength">
      <property name="max" value="30"/>
    </module>
    <module name="ThrowsCount">
      <property name="max" value="10"/>
    </module>
    <module name="UncommentedMain"/>
    <module name="CyclomaticComplexity">
      <property name="id" value="complexity"/>
      <property name="max" value="15"/>
    </module>
  </module>
  <module name="FileLength">
    <property name="severity" value="info"/>
  </module>
  <module name="FileTabCharacter">
    <property name="severity" value="ignore"/>
    <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
  </module>
  <module name="NewlineAtEndOfFile">
    <property name="severity" value="ignore"/>
    <metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
  </module>
  <module name="Translation"/>
  <module name="SuppressionCommentFilter">
    <property name="offCommentFormat" value="(@generated$)|(// end of custom code$)"/>
    <property name="onCommentFormat" value="(@generated NOT$)|(// begin of custom code$)"/>
    <metadata name="com.atlassw.tools.eclipse.checkstyle.comment" value="Supress Warnings on EMF generated code. No Supress Warning on manual code"/>
    <metadata name="com.atlassw.tools.eclipse.checkstyle.customMessage" value="Warning suppressed because code is generated by EMF. Warning enabled on custom code"/>
  </module>
  <module name="SuppressionCommentFilter">
    <property name="offCommentFormat" value="// BEGIN SUPRESS CATCH EXCEPTION"/>
    <property name="onCommentFormat" value="// END SUPRESS CATCH EXCEPTION"/>
    <property name="messageFormat" value=".*Exception.*"/>
    <metadata name="com.atlassw.tools.eclipse.checkstyle.comment" value="SupressCatchExceptionWarning"/>
  </module>
  <module name="SuppressionCommentFilter">
    <property name="offCommentFormat" value="// BEGIN IGNORE UNNECCESSARY IMPORT"/>
    <property name="onCommentFormat" value="// END IGNORE UNNECCESSARY IMPORT"/>
    <property name="messageFormat" value=".*import.*"/>
    <metadata name="com.atlassw.tools.eclipse.checkstyle.comment" value="Ignore unneccessary import warnings"/>
  </module>
  <module name="SuppressionCommentFilter">
    <property name="offCommentFormat" value="// BEGIN COMPLEX CODE"/>
    <property name="onCommentFormat" value="// END COMPLEX CODE"/>
    <metadata name="com.atlassw.tools.eclipse.checkstyle.comment" value="High Complexity Code Warning Suppression"/>
  </module>
  <module name="SuppressionCommentFilter">
    <property name="offCommentFormat" value="// REUSED CLASS"/>
    <property name="onCommentFormat" value="// END REUSED CLASS"/>
    <metadata name="com.atlassw.tools.eclipse.checkstyle.comment" value="High Complexity Code Warning Suppression"/>
  </module>
  <module name="RegexpHeader">
    <metadata name="net.sf.eclipsecs.core.comment" value="EclipseSource and others"/>
    <property name="header" value="^\/\*+$\n^ \* Copyright( \(c\))? \d\d\d\d(-\d\d\d\d)? (.*)$\n^ \*(( Technische Universitaet Muenchen\.)|(.*))$\n^ \* All rights reserved\. This program and the accompanying materials$\n^ \* are made available under the terms of the Eclipse Public License v1\.0$\n^ \* which accompanies this distribution\, and is available at$\n^ \* http\:\/\/www\.eclipse\.org\/legal\/epl-v10\.html$\n^ \*.*$\n^ \* Contributors\:.*$\n"/>
    <property name="fileExtensions" value="java"/>
  </module>
</module>
