All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sonar.plugins.checkstyle.rules.xml Maven / Gradle / Ivy

There is a newer version: 1.5M3
Show newest version
<rules>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.AbstractClassNameCheck">
    <name><![CDATA[Abstract Class Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/AbstractClassName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Ensures that the names of abstract classes conforming to some regular expression.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for abstract classes]]></description>
      <defaultValue><![CDATA[^Abstract.*$|^.*Factory$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.sizes.AnonInnerLengthCheck">
    <name><![CDATA[Anon Inner Length]]></name>
    <configKey><![CDATA[Checker/TreeWalker/AnonInnerLength]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for long anonymous inner classes.]]></description>
    <param key="max" type="i">
      <description><![CDATA[maximum allowable number of lines]]></description>
      <defaultValue><![CDATA[20]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.ArrayTrailingCommaCheck">
    <name><![CDATA[Array Trailing Comma]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ArrayTrailingComma]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks if array initialization contains optional trailing comma.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.ArrayTypeStyleCheck">
    <name><![CDATA[Array Type Style]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ArrayTypeStyle]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks the style of array type definitions. Some like Java-style: public static void main(String[] args) and some like C-style: public static void main(String args[])]]></description>
    <param key="javaStyle" type="b">
      <description><![CDATA[Controls whether to enforce Java style (true) or C style (false).]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.AvoidInlineConditionalsCheck">
    <name><![CDATA[Avoid Inline Conditionals]]></name>
    <configKey><![CDATA[Checker/TreeWalker/AvoidInlineConditionals]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Detects inline conditionals.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.blocks.AvoidNestedBlocksCheck">
    <name><![CDATA[Avoid Nested Blocks]]></name>
    <configKey><![CDATA[Checker/TreeWalker/AvoidNestedBlocks]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Finds nested blocks.]]></description>
    <param key="allowInSwitchCase" type="b">
      <description><![CDATA[Allow nested blocks in case statements]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.imports.AvoidStarImportCheck">
    <name><![CDATA[Avoid Star Import]]></name>
    <configKey><![CDATA[Checker/TreeWalker/AvoidStarImport]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Check that finds import statements that use the * notation.]]></description>
    <param key="excludes" type="s{}">
      <description>
        <![CDATA[packages where star imports are allowed. Note that this property is not recursive, subpackages of excluded packages are not automatically excluded.]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.metrics.BooleanExpressionComplexityCheck">
    <name><![CDATA[Boolean Expression Complexity]]></name>
    <configKey><![CDATA[Checker/TreeWalker/BooleanExpressionComplexity]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Restricts nested boolean operators (&&, || and ^) to a specified depth (default = 3).]]></description>
    <param key="max" type="i">
      <description><![CDATA[the maximum allowed number of boolean operations in one expression.]]></description>
      <defaultValue><![CDATA[3]]></defaultValue>
    </param>
    <param key="tokens" type="s[LAND,BAND,LOR,BOR,BXOR]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[LAND,BAND,LOR,BOR,BXOR]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.metrics.ClassDataAbstractionCouplingCheck">
    <name><![CDATA[Class Data Abstraction Coupling]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ClassDataAbstractionCoupling]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[This metric measures the number of instantiations of other classes within the given class.]]></description>
    <param key="max" type="i">
      <description><![CDATA[the maximum threshold allowed]]></description>
      <defaultValue><![CDATA[7]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.metrics.ClassFanOutComplexityCheck">
    <name><![CDATA[Class Fan Out Complexity]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ClassFanOutComplexity]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[The number of other classes a given class relies on.]]></description>
    <param key="max" type="i">
      <description><![CDATA[the maximum threshold allowed]]></description>
      <defaultValue><![CDATA[20]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.ConstantNameCheck">
    <name><![CDATA[Constant Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ConstantName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that constant names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for constants (static,  final fields)]]></description>
      <defaultValue><![CDATA[^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.CovariantEqualsCheck">
    <name><![CDATA[Covariant Equals]]></name>
    <configKey><![CDATA[Checker/TreeWalker/CovariantEquals]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that if a class defines a covariant method equals, then it defines method equals(java.lang.Object).]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.metrics.CyclomaticComplexityCheck">
    <name><![CDATA[Cyclomatic Complexity]]></name>
    <configKey><![CDATA[Checker/TreeWalker/CyclomaticComplexity]]></configKey>
    <category name="Maintainability"/>
    <description>
      <![CDATA[Checks cyclomatic complexity of methods against a specified limit. The complexity is measured by the number of if, while, do, for, ?:, catch, switch, case  statements, and operators && and || (plus one) in the body of a constructor, method, static initializer, or instance initializer. It is a measure of the minimum number of possible paths through the source and therefore the number of required tests. Generally 1-4 is considered good, 5-7 ok, 8-10 consider re-factoring, and 11+ re-factor now !]]></description>
    <param key="max" type="i">
      <description><![CDATA[the maximum threshold allowed]]></description>
      <defaultValue><![CDATA[10]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.DeclarationOrderCheck">
    <name><![CDATA[Declaration Order]]></name>
    <configKey><![CDATA[Checker/TreeWalker/DeclarationOrder]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks that the parts of a class or interface declaration appear in the order suggested by the Code Convention for the Java Programming Language : <ul><li>Class (static) variables. First the public class variables, then the protected, then package level (no access modifier), and then the private.</li><li>Instance variables. First the public class variables, then the protected, then package level (no access modifier), and then the private.</li><li>Constructors</li><li>Methods</li></ul>]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.DefaultComesLastCheck">
    <name><![CDATA[Default Comes Last]]></name>
    <configKey><![CDATA[Checker/TreeWalker/DefaultComesLast]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Check that the default is after all the cases in a switch statement.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.DesignForExtensionCheck">
    <name><![CDATA[Design For Extension]]></name>
    <configKey><![CDATA[Checker/TreeWalker/DesignForExtension]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that classes are designed for inheritance.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.DoubleCheckedLockingCheck">
    <name><![CDATA[Double Checked Locking]]></name>
    <configKey><![CDATA[Checker/TreeWalker/DoubleCheckedLocking]]></configKey>
    <category name="Reliability"/>
    <description>
      <![CDATA[Detect the double-checked locking idiom, a technique that tries to avoid synchronization overhead but is incorrect because of subtle artifacts of the java memory model.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.blocks.EmptyBlockCheck">
    <name><![CDATA[Empty Block]]></name>
    <configKey><![CDATA[Checker/TreeWalker/EmptyBlock]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for empty blocks.]]></description>
    <param key="option" type="s[text,stmt]">
      <description><![CDATA[policy on block contents]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="tokens" type="s[LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_IF,LITERAL_FOR,LITERAL_TRY,LITERAL_WHILE,INSTANCE_INIT,STATIC_INIT]">
      <description><![CDATA[blocks to check]]></description>
      <defaultValue><![CDATA[LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_IF,LITERAL_FOR,LITERAL_TRY,LITERAL_WHILE,INSTANCE_INIT,STATIC_INIT]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.EmptyForInitializerPadCheck">
    <name><![CDATA[Empty For Initializer Pad]]></name>
    <configKey><![CDATA[Checker/TreeWalker/EmptyForInitializerPad]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks the padding of an empty for initializer; that is whether a space is required at an empty for initializer, or such spaces are forbidden. Example : <code>for ( ; i < j; i++, j--)</code>]]></description>
    <param key="option" type="s[nospace,space]">
      <description><![CDATA[policy on how to pad an empty for iterator]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.EmptyForIteratorPadCheck">
    <name><![CDATA[Empty For Iterator Pad]]></name>
    <configKey><![CDATA[Checker/TreeWalker/EmptyForIteratorPad]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks the padding of an empty for iterator; that is whether a space is required at an empty for iterator, or such spaces are forbidden. Example : <code>for (Iterator foo = very.long.line.iterator(); foo.hasNext(); )]]></description>
    <param key="option" type="s[nospace,space]">
      <description><![CDATA[policy on how to pad an empty for iterator]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.EmptyStatementCheck">
    <name><![CDATA[Empty Statement]]></name>
    <configKey><![CDATA[Checker/TreeWalker/EmptyStatement]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Detects empty statements (standalone ';').]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.EntityBeanCheck">
    <name><![CDATA[Entity Bean]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.EntityBean]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks that a direct EJB2 entity bean, i.e. a class that directly implements <code>javax.ejb.EntityBean</code>, satisfies these class requirements:<br/><ul><li>The class is defined as <code>public</code>.</li><li>The class cannot be defined as <code>final</code>.</li><li>It contains a <code>public</code> constructor with no parameters.</li><li>It must not define the <code>finalize</code> method.</li></ul>Checks that methods of a direct entity bean satisfy these requirements:<ul><li>All <code>ejbCreate&lt;METHOD&gt;(...)</code> methods are <code>public</code>, not <code>final</code>, and not <code>static</code>.</li><li>The return type of all <code>ejbCreate&lt;METHOD&gt;(...)</code> methods is not <code>void</code>, because the return type must be the entity bean's primary key type.</li><li>All <code>ejbPostCreate&lt;METHOD&gt;(...)</code> methods are <code>public</code>, not <code>final</code>, and not <code>static</code>.<li></li>The return type of all <code>ejbPostCreate&lt;METHOD&gt;(...)</code> methods is <code>void</code>.</li><li>For each <code>ejbCreate&lt;METHOD&gt;(...)</code> method there is a matching <code>ejbPostCreate&lt;METHOD&gt;(...)</code> method.</li><li>All <code>ejbHome&lt;METHOD&gt;(...)</code> methods are <code>public</code>, and not <code>static</code>.</li><li>The throws clause of all <code>ejbHome&lt;METHOD&gt;(...)</code> methods does not define the <code>java.rmi.RemoteException</code>.</li></ul>When the check is configured to check direct entity beans as having bean-managed persistence, checks that methods satisfy these additional requirements:<ul><li>All <code>ejbFind&lt;METHOD&gt;(...)</code> methods are <code>public</code>, not <code>final</code>, and not <code>static</code>. </li><li>The return type of all <code>ejbFind&lt;METHOD&gt;(...)</code> methods is not <code>void</code>, because the return type must be the entity bean's primary key type, or a collection of primary keys.</li><li>There is a <code>ejbFindByPrimaryKey</code> method with one parameter.</li></ul>When the check is configured to check direct entity beans as having container-managed persistence, checks that methods satisfy these additional requirements: <ul><li>The throws clause of all <code>ejbCreate&lt;METHOD&gt;(...)</code> methods defines the <code>javax.ejb.CreateException</code>.</li><li>All <code>ejbSelect&lt;METHOD&gt;(...)</code> methods are <code>public</code> and <code>abstract</code>.</li><li>The throws clause of all <code>ejbSelect&lt;METHOD&gt;(...)</code> methods defines the <code>javax.ejb.FinderException</code>.</li></ul>]]></description>
    <param key="persistence" type="s[bean,container,mixed]">
      <description><![CDATA[type of persistence management]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.EqualsHashCodeCheck">
    <name><![CDATA[Equals Hash Code]]></name>
    <configKey><![CDATA[Checker/TreeWalker/EqualsHashCode]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that classes that override equals() also override hashCode().]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.sizes.ExecutableStatementCountCheck">
    <name><![CDATA[Executable Statement Count]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ExecutableStatementCount]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Restricts the number of executable statements to a specified limit (default = 30).]]></description>
    <param key="max" type="i">
      <description><![CDATA[the maximum threshold allowed]]></description>
      <defaultValue><![CDATA[30]]></defaultValue>
    </param>
    <param key="tokens" type="s[CTOR_DEF,METHOD_DEF,INSTANCE_INIT,STATIC_INIT]">
      <description><![CDATA[members to check]]></description>
      <defaultValue><![CDATA[CTOR_DEF,METHOD_DEF,INSTANCE_INIT,STATIC_INIT]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.ExplicitInitializationCheck">
    <name><![CDATA[Explicit Initialization]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ExplicitInitialization]]></configKey>
    <category name="Efficiency"/>
    <description>
      <![CDATA[Checks if any class or object member explicitly initialized to default for its type value (null for object references, zero for numeric types and char and false for boolean.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.FallThroughCheck">
    <name><![CDATA[Fall Through]]></name>
    <configKey><![CDATA[Checker/TreeWalker/FallThrough]]></configKey>
    <category name="Reliability"/>
    <description>
      <![CDATA[Checks for fall through in switch statements Finds locations where a case contains Java code - but lacks a break, return, throw or continue statement.]]></description>
    <param key="checkLastCaseGroup" type="b">
      <description><![CDATA[Whether we need to check last case group or not.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="reliefPattern" type="r">
      <description><![CDATA[Regulare expression to match the relief comment that supresses the warning about a fall through.]]></description>
      <defaultValue><![CDATA[fallthru|falls? ?through]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.sizes.FileLengthCheck">
    <name><![CDATA[File Length]]></name>
    <configKey><![CDATA[Checker/TreeWalker/FileLength]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for long source files.]]></description>
    <param key="max" type="i">
      <description><![CDATA[maximum allowable number of lines]]></description>
      <defaultValue><![CDATA[2000]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.FinalClassCheck">
    <name><![CDATA[Final Class]]></name>
    <configKey><![CDATA[Checker/TreeWalker/FinalClass]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that class which has only private constructors is declared as final.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.FinalLocalVariableCheck">
    <name><![CDATA[Final Local Variable]]></name>
    <configKey><![CDATA[Checker/TreeWalker/FinalLocalVariable]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Ensures that local variables that never get their values changed, must be declared final.]]></description>
    <param key="tokens" type="s[PARAMETER_DEF,VARIABLE_DEF]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[VARIABLE_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.FinalParametersCheck">
    <name><![CDATA[Final Parameters]]></name>
    <configKey><![CDATA[Checker/TreeWalker/FinalParameters]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Check that method/constructor/catch/foreach parameters are final.]]></description>
    <param key="tokens" type="s[METHOD_DEF,CTOR_DEF,LITERAL_CATCH]">
      <description><![CDATA[blocks to check]]></description>
      <defaultValue><![CDATA[METHOD_DEF,CTOR_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.FinalStaticCheck">
    <name><![CDATA[Final Static]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.FinalStatic]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that all static fields are declared final.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.GenericIllegalRegexpCheck">
    <name><![CDATA[Generic Illegal Regexp]]></name>
    <configKey><![CDATA[Checker/TreeWalker/GenericIllegalRegexp]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[A generic check for code problems, the user can search for any pattern.]]></description>
    <param key="format" type="r">
      <description><![CDATA[illegal pattern]]></description>
      <defaultValue><![CDATA[^$]]></defaultValue>
    </param>
    <param key="ignoreCase" type="b">
      <description><![CDATA[Controls whether to ignore case when searching.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="ignoreComments" type="b">
      <description><![CDATA[Controls whether to ignore text in comments when searching.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="message" type="s">
      <description><![CDATA[message which is used to notify about violations, if empty then default(hard-coded) message is used.]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.HiddenFieldCheck">
    <name><![CDATA[Hidden Field]]></name>
    <configKey><![CDATA[Checker/TreeWalker/HiddenField]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that a local variable or a parameter does not shadow a field that is defined in the same class.]]></description>
    <param key="tokens" type="s[PARAMETER_DEF,VARIABLE_DEF]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[PARAMETER_DEF,VARIABLE_DEF]]></defaultValue>
    </param>
    <param key="ignoreFormat" type="r">
      <description><![CDATA[pattern for names to ignore]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="ignoreConstructorParameter" type="b">
      <description><![CDATA[Controls whether to ignore constructor parameters.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="ignoreSetter" type="b">
      <description>
        <![CDATA[Controls whether to ignore the parameter of a property setter method, where the property setter method for field 'xyz' has name 'setXyz', one parameter named 'xyz', and return type void.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="ignoreAbstractMethods" type="b">
      <description><![CDATA[Controls whether to ignore parameters of abstract methods.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.HideUtilityClassConstructorCheck">
    <name><![CDATA[Hide Utility Class Constructor]]></name>
    <configKey><![CDATA[Checker/TreeWalker/HideUtilityClassConstructor]]></configKey>
    <category name="Efficiency"/>
    <description><![CDATA[Make sure that utility classes (classes that contain only static methods) do not have a public constructor.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.IllegalCatchCheck">
    <name><![CDATA[Illegal Catch]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalCatch]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Catching java.lang.Exception, java.lang.Error or java.lang.RuntimeException is almost never acceptable.]]></description>
    <param key="illegalClassNames" type="s{}">
      <description><![CDATA[exception class names to reject]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.imports.IllegalImportCheck">
    <name><![CDATA[Illegal Import]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalImport]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks for imports from a set of illegal packages, like sun.*]]></description>
    <param key="illegalPkgs" type="s{}">
      <description><![CDATA[packages to reject]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.IllegalInstantiationCheck">
    <name><![CDATA[Illegal Instantiation]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalInstantiation]]></configKey>
    <category name="Efficiency"/>
    <description>
      <![CDATA[Checks for illegal instantiations where a factory method is preferred. Depending on the project, for some classes it might be preferable to create instances through factory methods rather than calling the constructor. A simple example is the <code>java.lang.Boolean</code> class. In order to save memory and CPU cycles, it is preferable to use the predefined constants TRUE and FALSE. Constructor invocations should be replaced by calls to <code>Boolean.valueOf()</code>. Some extremely performance sensitive projects may require the use of factory methods for other classes as well, to enforce the usage of number caches or object pools.]]></description>
    <param key="classes" type="s{}">
      <description><![CDATA[classes that should not be instantiated]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.IllegalThrowsCheck">
    <name><![CDATA[Illegal Throws]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalThrows]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Throwing java.lang.Error or java.lang.RuntimeException is almost never acceptable.]]></description>
    <param key="illegalClassNames" type="s{}">
      <description><![CDATA[throw class names to reject]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.IllegalTokenCheck">
    <name><![CDATA[Illegal Token]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalToken]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks for illegal tokens. Certain language features often lead to hard to maintain code or are non-obvious to novice developers. Other features may be discouraged in certain frameworks, such as not having native methods in EJB components.]]></description>
    <param key="tokens" type="s{}">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[LITERAL_SWITCH,POST_INC,POST_DEC]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.IllegalTokenTextCheck">
    <name><![CDATA[Illegal Token Text]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalTokenText]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks for illegal token text.]]></description>
    <param key="tokens" type="s{}">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="format" type="r">
      <description><![CDATA[illegal pattern]]></description>
      <defaultValue><![CDATA[^$]]></defaultValue>
    </param>
    <param key="ignoreCase" type="b">
      <description><![CDATA[Controls whether to ignore case when matching.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="message" type="s">
      <description><![CDATA[Message which is used to notify about violations; if empty then the default message is used.]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.IllegalTypeCheck">
    <name><![CDATA[Illegal Type]]></name>
    <configKey><![CDATA[Checker/TreeWalker/IllegalType]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks that particular class are never used as types in variable declarations, return values or parameters.]]></description>
    <param key="tokens" type="s[PARAMETER_DEF,VARIABLE_DEF,METHOD_DEF]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[PARAMETER_DEF,VARIABLE_DEF,METHOD_DEF]]></defaultValue>
    </param>
    <param key="illegalClassNames" type="s{}">
      <description><![CDATA[classes that should not be used as types in variable declarations, return values or parameters.]]></description>
      <defaultValue>
        <![CDATA[java.util.GregorianCalendar,java.util.Hashtable,java.util.HashSet,java.util.HashMap,java.util.ArrayList,java.util.LinkedList,java.util.LinkedHashMap,java.util.LinkedHashSet,java.util.TreeSet,java.util.TreeMap,java.util.Vector]]></defaultValue>
    </param>
    <param key="legalAbstractClassNames" type="s{}">
      <description><![CDATA[abstract classes that may be used as types. ]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="ignoredMethodNames" type="s{}">
      <description><![CDATA[methods that should not be checked]]></description>
      <defaultValue><![CDATA[getInitialContext,getEnvironment]]></defaultValue>
    </param>
    <param key="format" type="r">
      <description><![CDATA[pattern for illegal class name]]></description>
      <defaultValue><![CDATA[^(.*[\.])?Abstract.*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.imports.ImportOrderCheck">
    <name><![CDATA[Import Order]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ImportOrder]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Class to check the ordering/grouping of imports.]]></description>
    <param key="groups" type="s{}">
      <description><![CDATA[list of imports groups (every group identified by string it's started)]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="ordered" type="b">
      <description><![CDATA[whether imports within group should be sorted]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="separated" type="b">
      <description><![CDATA[whether imports groups should be separated by, at least, one blank line]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="caseSensitive" type="b">
      <description><![CDATA[whether string comparision should be case sensitive or not]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.indentation.IndentationCheck">
    <name><![CDATA[Indentation]]></name>
    <configKey><![CDATA[Checker/TreeWalker/Indentation]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks correct indentation of Java Code.]]></description>
    <param key="basicOffset" type="i">
      <description><![CDATA[how many spaces to use for new indentation level]]></description>
      <defaultValue><![CDATA[4]]></defaultValue>
    </param>
    <param key="braceAdjustment" type="i">
      <description><![CDATA[how far brace should be indented when on next line]]></description>
      <defaultValue><![CDATA[0]]></defaultValue>
    </param>
    <param key="caseIndent" type="i">
      <description><![CDATA[how much to indent a case label]]></description>
      <defaultValue><![CDATA[4]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.InnerAssignmentCheck">
    <name><![CDATA[Inner Assignment]]></name>
    <configKey><![CDATA[Checker/TreeWalker/InnerAssignment]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks for assignments in subexpressions, such as in String s = Integer.toString(i = 2);.]]></description>
    <param key="tokens" type="s[ASSIGN,BAND_ASSIGN,BOR_ASSIGN,BSR_ASSIGN,BXOR_ASSIGN,DIV_ASSIGN,MINUS_ASSIGN,MOD_ASSIGN,PLUS_ASSIGN,SL_ASSIGN,SR_ASSIGN,STAR_ASSIGN]">
      <description><![CDATA[assignments to check]]></description>
      <defaultValue><![CDATA[ASSIGN,BAND_ASSIGN,BOR_ASSIGN,BSR_ASSIGN,BXOR_ASSIGN,DIV_ASSIGN,MINUS_ASSIGN,MOD_ASSIGN,PLUS_ASSIGN,SL_ASSIGN,SR_ASSIGN,STAR_ASSIGN]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.InterfaceIsTypeCheck">
    <name><![CDATA[Interface Is Type]]></name>
    <configKey><![CDATA[Checker/TreeWalker/InterfaceIsType]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Implements Bloch, Effective Java, Item 17 - Use Interfaces only to define types.  According to Bloch, an interface should describe a type. It is therefore inappropriate to define an interface that does not contain any methods but only constants. The Standard class javax.swing.SwingConstants is an example of a class that would be flagged by this check. The check can be configured to also disallow marker interfaces like java.io.Serializable, that do not contain methods or constants at all.]]></description>
    <param key="allowMarkerInterfaces" type="b">
      <description><![CDATA[Controls whether marker interfaces like Serializable are allowed.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocMethodCheck">
    <name><![CDATA[Javadoc Method]]></name>
    <configKey><![CDATA[Checker/TreeWalker/JavadocMethod]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks the Javadoc of a method or constructor.]]></description>
    <param key="scope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="excludeScope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are not checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="allowUndeclaredRTE" type="b">
      <description><![CDATA[whether to allow documented exceptions that are not declared if they are a subclass of java.lang.RuntimeException]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowThrowsTagsForSubclasses" type="b">
      <description><![CDATA[whether to allow documented exceptions that are subclass of one of declared exception.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowMissingParamTags" type="b">
      <description><![CDATA[whether to ignore errors when a method has parameters but does not have matching param tags in the javadoc.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowMissingThrowsTags" type="b">
      <description><![CDATA[whether to ignore errors when a method declares that it throws exceptions but does have matching throws tags in the javadoc.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowMissingReturnTag" type="b">
      <description><![CDATA[whether to ignore errors when a method returns non-void type does have a return tag in the javadoc.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowMissingJavadoc" type="b">
      <description><![CDATA[whether to ignore errors when a method javadoc is missed.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowMissingPropertyJavadoc" type="b">
      <description>
        <![CDATA[Whether to allow missing Javadoc on accessor methods for properties (setters and getters). The setter and getter methods must match exactly the structures below.  <code> public void setNumber(final int number) { mNumber = number; }  public int getNumber() { return mNumber; }  public boolean isSomething() { return false; } </code>]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="tokens" type="s[METHOD_DEF,CTOR_DEF]">
      <description><![CDATA[definitions to check]]></description>
      <defaultValue><![CDATA[METHOD_DEF,CTOR_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocStyleCheck">
    <name><![CDATA[Javadoc Style]]></name>
    <configKey><![CDATA[Checker/TreeWalker/JavadocStyle]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Custom Checkstyle Check to validate Javadoc.]]></description>
    <param key="scope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="excludeScope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are not checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="checkFirstSentence" type="b">
      <description><![CDATA[Whether to check the first sentence for proper end of sentence.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="checkEmptyJavadoc" type="b">
      <description><![CDATA[Whether to check if the Javadoc is missing a describing text.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="checkHtml" type="b">
      <description><![CDATA[Whether to check for incomplete html tags.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="tokens" type="s[INTERFACE_DEF,CLASS_DEF,METHOD_DEF,CTOR_DEF,VARIABLE_DEF]">
      <description><![CDATA[definitions to check]]></description>
      <defaultValue><![CDATA[INTERFACE_DEF,CLASS_DEF,METHOD_DEF,CTOR_DEF,VARIABLE_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocTypeCheck">
    <name><![CDATA[Javadoc Type]]></name>
    <configKey><![CDATA[Checker/TreeWalker/JavadocType]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks the Javadoc of a type.]]></description>
    <param key="scope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="excludeScope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are not checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="authorFormat" type="r">
      <description><![CDATA[pattern for @author tag]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="versionFormat" type="r">
      <description><![CDATA[pattern for @version tag]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="allowMissingParamTags" type="b">
      <description><![CDATA[whether to ignore errors when a class has type parameters but does not have matching param tags in the javadoc.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="tokens" type="s[INTERFACE_DEF,CLASS_DEF]">
      <description><![CDATA[definitions to check]]></description>
      <defaultValue><![CDATA[INTERFACE_DEF,CLASS_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocVariableCheck">
    <name><![CDATA[Javadoc Variable]]></name>
    <configKey><![CDATA[Checker/TreeWalker/JavadocVariable]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that a variable has Javadoc comment.]]></description>
    <param key="scope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="excludeScope" type="s[nothing,public,protected,package,private,anoninner]">
      <description><![CDATA[visibility scope where Javadoc comments are not checked]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.blocks.LeftCurlyCheck">
    <name><![CDATA[Left Curly]]></name>
    <configKey><![CDATA[Checker/TreeWalker/LeftCurly]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks for the placement of left curly braces for code blocks. The policy to verify is specified using property option. Policies <code>eol</code> and <code>nlow</code> take into account property maxLineLength.]]></description>
    <param key="option" type="s[eol,nl,nlow]">
      <description>
        <![CDATA[policy on placement of a left curly brace ('{'). eol : the brace must always be on the end of the line, nl : he brace must always be on a new line, nlow : ff the brace will fit on the first line of the statement, taking into account maximum line length, then apply eol rule. Otherwise apply the nl rule. nlow is a mnemonic for 'new line on wrap'.]]></description>
      <defaultValue><![CDATA[eol]]></defaultValue>
    </param>
    <param key="maxLineLength" type="i">
      <description><![CDATA[maximum number of characters in a line]]></description>
      <defaultValue><![CDATA[80]]></defaultValue>
    </param>
    <param key="tokens"
           type="s[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]">
      <description><![CDATA[blocks to check]]></description>
      <defaultValue>
        <![CDATA[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]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.sizes.LineLengthCheck">
    <name><![CDATA[Line Length]]></name>
    <configKey><![CDATA[Checker/TreeWalker/LineLength]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for long lines.]]></description>
    <param key="ignorePattern" type="r">
      <description><![CDATA[pattern for lines to ignore]]></description>
      <defaultValue><![CDATA[^$]]></defaultValue>
    </param>
    <param key="max" type="i">
      <description><![CDATA[maximum allowable line length]]></description>
      <defaultValue>80</defaultValue>
    </param>
    <param key="tabWidth" type="i">
      <description><![CDATA[number of expanded spaces for a tab character]]></description>
      <defaultValue>8</defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.LocalFinalVariableNameCheck">
    <name><![CDATA[Local Final Variable Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/LocalFinalVariableName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that local final variable names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for local, final variables, including catch parameters]]></description>
      <defaultValue><![CDATA[^[a-z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.LocalHomeInterfaceCheck">
    <name><![CDATA[Local Home Interface]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.LocalHomeInterface]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[EJB2 : checks that a direct local home interface, i.e. an interface that directly extends <code>javax.ejb.EJBLocalHome</code>, satisfies these requirements :<ul><li>The return type of all <code>create&lt;METHOD&gt;(...)</code> methods is not <code>void</code>, because the return type must be the bean's local interface.</li><li>The throws clause of all <code>create&lt;METHOD&gt;(...)</code> methods defines the <code>javax.ejb.CreateException</code>.</li><li>The throws clause of all methods does not define the <code>java.rmi.RemoteException</code>.</li></ul>Reference: Enterprise JavaBeansTM Specification,Version 2.0,sections 6.4 and 9.6.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.LocalInterfaceCheck">
    <name><![CDATA[Local Interface]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.LocalInterface]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[EJB2 : checks that a direct local interface, i.e. an interface that directly extends javax.ejb.EJBLocalObject, satisfies these requirements:<ul><li>The throws clause of all methods does not define the java.rmi.RemoteException.</li></ul>Reference: Enterprise JavaBeansTM Specification,Version 2.0, section 9.10.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.LocalVariableNameCheck">
    <name><![CDATA[Local Variable Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/LocalVariableName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that local, non-final variable names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for local, non-final variables, including catch parameters]]></description>
      <defaultValue><![CDATA[^[a-z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
    <param key="tokens" type="s[VARIABLE_DEF,PARAMETER_DEF]">
      <description><![CDATA[Controls whether the check applies to variable declarations or catch clause parameters]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.MagicNumberCheck">
    <name><![CDATA[Magic Number]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MagicNumber]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks for magic numbers.]]></description>
    <param key="tokens" type="s[NUM_DOUBLE,NUM_FLOAT,NUM_INT,NUM_LONG]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[NUM_DOUBLE,NUM_FLOAT,NUM_INT,NUM_LONG]]></defaultValue>
    </param>
    <param key="ignoreNumbers" type="i{}">
      <description><![CDATA[non-magic numbers]]></description>
      <defaultValue><![CDATA[-1,0,1,2]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.MemberNameCheck">
    <name><![CDATA[Member Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MemberName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that instance variable names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for non-static fields]]></description>
      <defaultValue><![CDATA[^[a-z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
    <param key="applyToPublic" type="b">
      <description><![CDATA[Controls whether to apply the check to public member.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="applyToProtected" type="b">
      <description><![CDATA[Controls whether to apply the check to protected member.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="applyToPackage" type="b">
      <description><![CDATA[Controls whether to apply the check to package-private member.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="applyToPrivate" type="b">
      <description><![CDATA[Controls whether to apply the check to private member.]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.MessageBeanCheck">
    <name><![CDATA[Message Bean]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.MessageBean]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[EJB2 : checks that a direct message bean, i.e. a class that directly implements <code>javax.ejb.MessageDrivenBean</code> and <code>javax.jms.MessageListener</code>, satisfies these class requirements:<ul><li>The class is defined as <code>public</code>.</li><li>The class cannot be defined as <code>final</code>.</li><li>The class cannot be defined as <code>abstract</code>.</li><li>It contains a <code>public</code> constructor with no parameters.</li><li>It must not define the <code>finalize</code> method.</li><li>It defines an <code>ejbCreate()</code> method this is <code>public</code>, not <code>final</code>, not <code>static</code>, has no parameters, and has return type <code>void</code>. </li> </ul>Reference: Enterprise JavaBeans? Specification,Version 2.0,section 15.7.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.sizes.MethodLengthCheck">
    <name><![CDATA[Method Length]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MethodLength]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for long methods.]]></description>
    <param key="max" type="i">
      <description><![CDATA[maximum allowable number of lines]]></description>
      <defaultValue><![CDATA[150]]></defaultValue>
    </param>
    <param key="countEmpty" type="b">
      <description><![CDATA[whether to count empty lines and single line comments of the form //]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="tokens" type="s[METHOD_DEF,CTOR_DEF]">
      <description><![CDATA[blocks to check]]></description>
      <defaultValue><![CDATA[METHOD_DEF,CTOR_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.MethodNameCheck">
    <name><![CDATA[Method Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MethodName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that method names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for methods]]></description>
      <defaultValue><![CDATA[^[a-z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.MethodParamPadCheck">
    <name><![CDATA[Method Param Pad]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MethodParamPad]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks the padding between the identifier of a method definition, constructor definition, method call, or constructor invocation; and the left parenthesis of the parameter list.]]></description>
    <param key="allowLineBreaks" type="b">
      <description><![CDATA[whether a line break between the identifier and left parenthesis is allowed]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="tokens" type="s[CTOR_DEF,LITERAL_NEW,METHOD_CALL,METHOD_DEF,SUPER_CTOR_CALL]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[CTOR_DEF,LITERAL_NEW,METHOD_CALL,METHOD_DEF,SUPER_CTOR_CALL]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.MissingCtorCheck">
    <name><![CDATA[Missing Constructor]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MissingCtor]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that classes (except abstract one) define a constructor and don't rely on the default one.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.MissingSwitchDefaultCheck">
    <name><![CDATA[Missing Switch Default]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MissingSwitchDefault]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that switch statement has default clause.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.ModifiedControlVariableCheck">
    <name><![CDATA[Modified Control Variable]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ModifiedControlVariable]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Check for ensuring that for loop control variables are not modified inside the for block.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.modifier.ModifierOrderCheck">
    <name><![CDATA[Modifier Order]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ModifierOrder]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks that the order of modifiers conforms to the suggestions in the Java Language specification, sections 8.1.1, 8.3.1 and 8.4.3. The correct order is : public, protected, private, abstract, static, final, transient, volatile, synchronized, native, strictfp.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.MultipleStringLiteralsCheck">
    <name><![CDATA[Multiple String Literals]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MultipleStringLiterals]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for multiple occurrences of the same string literal within a single file. Code duplication makes maintenance more difficult, so it can be better to replace the multiple occurrences with a constant.]]></description>
    <param key="allowedDuplicates" type="i">
      <description><![CDATA[The maximum number of occurences to allow without generating a warning]]></description>
      <defaultValue><![CDATA[1]]></defaultValue>
    </param>
    <param key="ignoreStringsRegexp" type="r">
      <description><![CDATA[regexp pattern for ignored strings (with quotation marks)]]></description>
      <defaultValue><![CDATA[^$]]></defaultValue>
    </param>
    <param key="ignoreOccurrenceContext" type="s">
      <description>
        <![CDATA[Token type names where duplicate strings are ignored even if they don't match ignoredStringsRegexp. This allows you to exclude syntactical contexts like Annotations or static initializers from the check.]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.MultipleVariableDeclarationsCheck">
    <name><![CDATA[Multiple Variable Declarations]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MultipleVariableDeclarations]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that each variable declaration is in its own statement and on its own line.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.MutableExceptionCheck">
    <name><![CDATA[Mutable Exception]]></name>
    <configKey><![CDATA[Checker/TreeWalker/MutableException]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Ensures that exceptions (defined as any class name conforming to some regular expression) are immutable.]]></description>
    <param key="format" type="r">
      <description><![CDATA[pattern for name of exception class.]]></description>
      <defaultValue><![CDATA[^.*Exception$|^.*Error$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.metrics.NPathComplexityCheck">
    <name><![CDATA[NPath Complexity]]></name>
    <configKey><![CDATA[Checker/TreeWalker/NPathComplexity]]></configKey>
    <category name="Maintainability"/>
    <description>
      <![CDATA[Checks the npath complexity of a method against a specified limit (default = 200). The NPATH metric computes the number of possible execution paths through a function. It takes into account the nesting of conditional statements and multi-part boolean expressions (e.g., A && B, C || D, etc.).]]></description>
    <param key="max" type="i">
      <description><![CDATA[the maximum threshold allowed]]></description>
      <defaultValue><![CDATA[200]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.blocks.NeedBracesCheck">
    <name><![CDATA[Need Braces]]></name>
    <configKey><![CDATA[Checker/TreeWalker/NeedBraces]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks for braces around code blocks.]]></description>
    <param key="tokens" type="s[LITERAL_DO,LITERAL_ELSE,LITERAL_IF,LITERAL_FOR,LITERAL_WHILE]">
      <description><![CDATA[blocks to check]]></description>
      <defaultValue><![CDATA[LITERAL_DO,LITERAL_ELSE,LITERAL_IF,LITERAL_FOR,LITERAL_WHILE]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.NestedIfDepthCheck">
    <name><![CDATA[Nested If Depth]]></name>
    <configKey><![CDATA[Checker/TreeWalker/NestedIfDepth]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Restricts nested if-else blocks to a specified depth (default = 1).]]></description>
    <param key="max" type="i">
      <description><![CDATA[allowed nesting depth]]></description>
      <defaultValue><![CDATA[1]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.NestedTryDepthCheck">
    <name><![CDATA[Nested Try Depth]]></name>
    <configKey><![CDATA[Checker/TreeWalker/NestedTryDepth]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Restricts nested try-catch-finally blocks to a specified depth (default = 1).]]></description>
    <param key="max" type="i">
      <description><![CDATA[allowed nesting depth]]></description>
      <defaultValue><![CDATA[1]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.NewlineAtEndOfFileCheck">
    <name><![CDATA[Newline At End Of File]]></name>
    <configKey><![CDATA[Checker/NewlineAtEndOfFile]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks that there is a newline at the end of each file. Any source files and text files in general should end with a newline character, especially when using SCM systems such as CVS. CVS will even print a warning when it encounters a file that doesn't end with a newline.]]></description>
    <param key="lineSeparator" type="s[system,crlf,cr,lf]">
      <description><![CDATA[type of line separator. One of 'system' (system default), 'crlf' (Windows-style), 'cr' (Mac-style) and 'lf' (Unix-style).]]></description>
      <defaultValue><![CDATA[system]]></defaultValue>
    </param>
    <param key="fileExtensions" type="s{}">
      <description><![CDATA[file type extension of the files to check.]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.NoWhitespaceAfterCheck">
    <name><![CDATA[No Whitespace After]]></name>
    <configKey><![CDATA[Checker/TreeWalker/NoWhitespaceAfter]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that there is no whitespace after a token.]]></description>
    <param key="allowLineBreaks" type="b">
      <description><![CDATA[whether whitespace is allowed if the token is at a linebreak]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="tokens" type="s[ARRAY_INIT,BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS,TYPECAST]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[ARRAY_INIT,BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.NoWhitespaceBeforeCheck">
    <name><![CDATA[No Whitespace Before]]></name>
    <configKey><![CDATA[Checker/TreeWalker/NoWhitespaceBefore]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that there is no whitespace before a token.]]></description>
    <param key="allowLineBreaks" type="b">
      <description><![CDATA[whether whitespace is allowed if the token is at a linebreak]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="tokens" type="s[SEMI,DOT,POST_DEC,POST_INC]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[SEMI,POST_DEC,POST_INC]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.OperatorWrapCheck">
    <name><![CDATA[Operator Wrap]]></name>
    <configKey><![CDATA[Checker/TreeWalker/OperatorWrap]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks line wrapping for operators.]]></description>
    <param key="option" type="s[nl,eol]">
      <description><![CDATA[policy on how to wrap lines. 'nl' : the operator must be on a new line, 'eol' : the operator must be at the end of the line.]]></description>
      <defaultValue><![CDATA[nl]]></defaultValue>
    </param>
    <param key="tokens"
           type="s[ASSIGN,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]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[BAND,BOR,BSR,BXOR,COLON,DIV,EQUAL,GE,GT,LAND,LE,LITERAL_INSTANCEOF,LOR,LT,MINUS,MOD,NOT_EQUAL,PLUS,QUESTION,SL,SR,STAR]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.PackageDeclarationCheck">
    <name><![CDATA[Package Declaration]]></name>
    <configKey><![CDATA[Checker/TreeWalker/PackageDeclaration]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Ensures there is a package declaration.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.javadoc.PackageHtmlCheck">
    <name><![CDATA[Package Html]]></name>
    <configKey><![CDATA[Checker/PackageHtml]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that all packages have a package documentation.]]></description>
    <param key="fileExtensions" type="s{}">
      <description>
        <![CDATA[file type extension to identify java files. Setting this property is typically only required if your java source files are preprocessed and the original files do not have the extension .java]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.PackageNameCheck">
    <name><![CDATA[Package Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/PackageName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that package names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for packages]]></description>
      <defaultValue><![CDATA[^[a-z]+(.[a-zA-Z_][a-zA-Z0-9_]*)*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.ParameterAssignmentCheck">
    <name><![CDATA[Parameter Assignment]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ParameterAssignment]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Disallow assignment of parameters.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.ParameterNameCheck">
    <name><![CDATA[Parameter Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ParameterName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that parameter names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for parameters]]></description>
      <defaultValue><![CDATA[^[a-z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.sizes.ParameterNumberCheck">
    <name><![CDATA[Parameter Number]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ParameterNumber]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks the number of parameters that a method or constructor has.]]></description>
    <param key="max" type="i">
      <description><![CDATA[maximum allowable number of parameters]]></description>
      <defaultValue><![CDATA[7]]></defaultValue>
    </param>
    <param key="tokens" type="s[METHOD_DEF,CTOR_DEF]">
      <description><![CDATA[declarations to check]]></description>
      <defaultValue><![CDATA[METHOD_DEF,CTOR_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.ParenPadCheck">
    <name><![CDATA[Paren Pad]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ParenPad]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks the padding of parentheses; that is whether a space is required after a left parenthesis and before a right parenthesis, or such spaces are forbidden, with the exception that it does not check for padding of the right parenthesis at an empty for iterator.]]></description>
    <param key="option" type="s[nospace,space]">
      <description><![CDATA[policy on how to pad parentheses]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="tokens" type="s[CTOR_CALL,LPAREN,METHOD_CALL,RPAREN,SUPER_CTOR_CALL]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[CTOR_CALL,LPAREN,METHOD_CALL,RPAREN,SUPER_CTOR_CALL]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.modifier.RedundantModifierCheck">
    <name><![CDATA[Redundant Modifier]]></name>
    <configKey><![CDATA[Checker/TreeWalker/RedundantModifier]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for redundant modifiers in interface and annotation definitions.]]></description>
    <param key="tokens" type="s[METHOD_DEF,VARIABLE_DEF,ANNOTATION_FIELD_DEF]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[METHOD_DEF,VARIABLE_DEF,ANNOTATION_FIELD_DEF]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.RedundantThrowsCheck">
    <name><![CDATA[Redundant Throws]]></name>
    <configKey><![CDATA[Checker/TreeWalker/RedundantThrows]]></configKey>
    <category name="Maintainability"/>
    <description>
      <![CDATA[Checks for redundant exceptions declared in throws clause such as duplicates, unchecked exceptions or subclasses of another declared exception.]]></description>
    <param key="allowUnchecked" type="b">
      <description><![CDATA[whether unchecked exceptions in throws are allowed or not]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowSubclasses" type="b">
      <description><![CDATA[whether subclass of another declared exception is allowed in throws clause]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.RegexpCheck">
    <name><![CDATA[Regexp]]></name>
    <configKey><![CDATA[Checker/TreeWalker/Regexp]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[A check that makes sure that a specified pattern exists (or not) in the file.]]></description>
    <param key="format" type="r">
      <description><![CDATA[pattern]]></description>
      <defaultValue><![CDATA[$^]]></defaultValue>
    </param>
    <param key="message" type="s">
      <description><![CDATA[message which is used to notify about violations, if empty then default(hard-coded) message is used.]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="illegalPattern" type="b">
      <description><![CDATA[Controls whether the pattern is required or illegal.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="duplicateLimit" type="i">
      <description>
        <![CDATA[Controls whether to check for duplicates of a required pattern, any negative value means no checking for duplicates, any positive value is used as the maximum number of allowed duplicates, if the limit is exceeded errors will be logged.]]></description>
      <defaultValue><![CDATA[-1]]></defaultValue>
    </param>
    <param key="errorLimit" type="i">
      <description><![CDATA[Controls the maximum number of errors before the check will abort.]]></description>
      <defaultValue><![CDATA[100]]></defaultValue>
    </param>
    <param key="ignoreComments" type="b">
      <description><![CDATA[Controls whether to ignore matches found within comments.]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.RemoteHomeInterfaceCheck">
    <name><![CDATA[Remote Home Interface]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.RemoteHomeInterface]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[EJB2 : checks that a direct remote home interface, i.e. an interface that directly extends javax.ejb.EJBHome, satisfies these requirements:<ul><li>The return type of all <code>create&lt;METHOD&gt;(...)</code> methods is not void, because the return type must be the bean's remote interface.</li><li>The throws clause of all <code>create&lt;METHOD&gt;(...)</code> methods defines the <code>javax.ejb.CreateException</code>.</li><li>The throws clause of all methods defines the <code>java.rmi.RemoteException</code>.</li></ul>Reference: Enterprise JavaBeansTM Specification,Version 2.0, sections 6.3 and 9.5.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.RemoteInterfaceCheck">
    <name><![CDATA[Remote Interface]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.RemoteInterface]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[EJB2 : checks that a direct remote interface, i.e. an interface that directly extends <code>javax.ejb.EJBObject</code>, satisfies these requirements:<ul><li>The throws clause of all methods defines the <code>java.rmi.RemoteException</code>.</li></ul>Reference: Enterprise JavaBeansTM Specification,Version 2.0, section 9.9.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.RequireThisCheck">
    <name><![CDATA[Require This]]></name>
    <configKey><![CDATA[Checker/TreeWalker/RequireThis]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that code doesn't rely on the this default.]]></description>
    <param key="checkFields" type="b">
      <description><![CDATA[whether we should check fields usage or not]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="checkMethods" type="b">
      <description><![CDATA[whether we should check methods usage or not]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.RequiredRegexpCheck">
    <name><![CDATA[Required Regexp]]></name>
    <configKey><![CDATA[Checker/TreeWalker/RequiredRegexp]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[A check that makes sure that a specified pattern exists in the code.]]></description>
    <param key="format" type="r">
      <description><![CDATA[required pattern]]></description>
      <defaultValue><![CDATA[^$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.ReturnCountCheck">
    <name><![CDATA[Return Count]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ReturnCount]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Restricts return statements to a specified count (default = 2).]]></description>
    <param key="max" type="i">
      <description><![CDATA[maximum allowed number of return statments]]></description>
      <defaultValue><![CDATA[2]]></defaultValue>
    </param>
    <param key="format" type="r">
      <description><![CDATA[method names to ingone]]></description>
      <defaultValue><![CDATA[^equals$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.blocks.RightCurlyCheck">
    <name><![CDATA[Right Curly]]></name>
    <configKey><![CDATA[Checker/TreeWalker/RightCurly]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks the placement of right curly braces.]]></description>
    <param key="option" type="s[same,alone]">
      <description><![CDATA[policy on placement of a right curly brace ('}')]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="tokens" type="s[LITERAL_TRY,LITERAL_CATCH,LITERAL_FINALLY,LITERAL_IF,LITERAL_ELSE]">
      <description><![CDATA[blocks to check]]></description>
      <defaultValue><![CDATA[LITERAL_TRY,LITERAL_CATCH,LITERAL_FINALLY,LITERAL_IF,LITERAL_ELSE]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.SessionBeanCheck">
    <name><![CDATA[Session Bean]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.SessionBean]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[EJB2 : checks that a direct session bean, i.e. a class that directly implements <code>javax.ejb.SessionBean</code>, satisfies these class requirements:<ul><li>The class is defined as public.</li><li>The class cannot be defined as final.</li><li>The class cannot be defined as abstract.</li><li>It contains a public constructor with no parameters.</li><li>It must not define the finalize method.</li><li>It defines an <code>ejbCreate&lt;METHOD&gt;()</code> method this is public, not final, not static, and has return type void.</li></ul>Reference: Enterprise JavaBeans? Specification,Version 2.0, section 7.10.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.SimplifyBooleanExpressionCheck">
    <name><![CDATA[Simplify Boolean Expression]]></name>
    <configKey><![CDATA[Checker/TreeWalker/SimplifyBooleanExpression]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for overly complicated boolean expressions.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.SimplifyBooleanReturnCheck">
    <name><![CDATA[Simplify Boolean Return]]></name>
    <configKey><![CDATA[Checker/TreeWalker/SimplifyBooleanReturn]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for overly complicated boolean return statements.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.StaticVariableNameCheck">
    <name><![CDATA[Static Variable Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/StaticVariableName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that static, non-final variable names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for static, non-final fields]]></description>
      <defaultValue><![CDATA[^[a-z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.duplicates.StrictDuplicateCodeCheck">
    <name><![CDATA[Strict Duplicate Code]]></name>
    <configKey><![CDATA[Checker/StrictDuplicateCode]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Performs a line-by-line comparison of all code lines and reports duplicate code if a sequence of lines differs only in indentation.]]></description>
    <param key="min" type="i">
      <description><![CDATA[how many lines must be equal to be considered a duplicate]]></description>
      <defaultValue><![CDATA[12]]></defaultValue>
    </param>
    <param key="charset" type="s">
      <description><![CDATA[name of the file charset]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.StringLiteralEqualityCheck">
    <name><![CDATA[String Literal Equality]]></name>
    <configKey><![CDATA[Checker/TreeWalker/StringLiteralEquality]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that string literals are not used with == or !=.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.SuperCloneCheck">
    <name><![CDATA[Super Clone]]></name>
    <configKey><![CDATA[Checker/TreeWalker/SuperClone]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that an overriding clone() method invokes super.clone().]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.SuperFinalizeCheck">
    <name><![CDATA[Super Finalize]]></name>
    <configKey><![CDATA[Checker/TreeWalker/SuperFinalize]]></configKey>
    <category name="Reliability"/>
    <description><![CDATA[Checks that an overriding finalize() method invokes super.finalize().]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.TabCharacterCheck">
    <name><![CDATA[Tab Character]]></name>
    <configKey><![CDATA[Checker/TreeWalker/TabCharacter]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Reports tab characters ('	') in the source code.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.ThisParameterCheck">
    <name><![CDATA[This Parameter]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.ThisParameter]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that 'this' is not a parameter of any method calls or constructors for a bean.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.j2ee.ThisReturnCheck">
    <name><![CDATA[This Return]]></name>
    <configKey><![CDATA[Checker/TreeWalker/j2ee.ThisReturn]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that 'this' is not returned by a bean method.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.ThrowsCountCheck">
    <name><![CDATA[Throws Count]]></name>
    <configKey><![CDATA[Checker/TreeWalker/ThrowsCount]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Restricts throws statements to a specified count (default = 1).]]></description>
    <param key="max" type="i">
      <description><![CDATA[maximum allowed number of throws statments]]></description>
      <defaultValue><![CDATA[1]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.TodoCommentCheck">
    <name><![CDATA[Todo Comment]]></name>
    <configKey><![CDATA[Checker/TreeWalker/TodoComment]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[A check for TODO comments.]]></description>
    <param key="format" type="r">
      <description><![CDATA[pattern to check]]></description>
      <defaultValue><![CDATA[TODO:]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.indentation.TrailingCommentCheck">
    <name><![CDATA[Trailing Comment]]></name>
    <configKey><![CDATA[Checker/TreeWalker/TrailingComment]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[The check to ensure that requires that comments be the only thing on a line.]]></description>
    <param key="format" type="r">
      <description><![CDATA[pattern for string allowed before comment.]]></description>
      <defaultValue><![CDATA[^[\s\}\);]*$]]></defaultValue>
    </param>
    <param key="legalComment" type="r">
      <description>
        <![CDATA[pattern for text of trailing comment which is allowed. (this patter will not be applied to multiline comments and text of comment will be trimmed before matching)]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.TranslationCheck">
    <name><![CDATA[Translation]]></name>
    <configKey><![CDATA[Checker/Translation]]></configKey>
    <category name="Maintainability"/>
    <description>
      <![CDATA[Ensures the correct translation of code by checking property files for consistency regarding their keys. Two property files describing one and the same context are consistent if they contain the same keys.]]></description>
    <param key="fileExtensions" type="s{}">
      <description>
        <![CDATA[File type extension to identify translation files. Setting this property is typically only required if your translation files are preprocessed and the original files do not have the extension .properties.]]></description>
      <defaultValue><![CDATA[properties]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.naming.TypeNameCheck">
    <name><![CDATA[Type Name]]></name>
    <configKey><![CDATA[Checker/TreeWalker/TypeName]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that type names conform to a format specified by the format property.]]></description>
    <param key="format" type="r">
      <description><![CDATA[Validates identifiers for classes and interfaces]]></description>
      <defaultValue><![CDATA[^[A-Z][a-zA-Z0-9]*$]]></defaultValue>
    </param>
    <param key="tokens" type="s[CLASS_DEF,INTERFACE_DEF]">
      <description><![CDATA[Control whether the check applies to classes or interfaces]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.TypecastParenPadCheck">
    <name><![CDATA[Typecast Paren Pad]]></name>
    <configKey><![CDATA[Checker/TreeWalker/TypecastParenPad]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks the padding of parentheses for typecasts.]]></description>
    <param key="option" type="s[nospace,space]">
      <description><![CDATA[policy on how to pad parentheses]]></description>
      <defaultValue><![CDATA[]]></defaultValue>
    </param>
    <param key="tokens" type="s[TYPECAST,RPAREN]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[TYPECAST,RPAREN]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.UncommentedMainCheck">
    <name><![CDATA[Uncommented Main]]></name>
    <configKey><![CDATA[Checker/TreeWalker/UncommentedMain]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Detects uncommented main methods.]]></description>
    <param key="excludedClasses" type="r">
      <description><![CDATA[pattern for qualified names of classes which are allowed to have a main method.]]></description>
      <defaultValue><![CDATA[^$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.coding.UnnecessaryParenthesesCheck">
    <name><![CDATA[Unnecessary Parentheses]]></name>
    <configKey><![CDATA[Checker/TreeWalker/UnnecessaryParentheses]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks if unnecessary parentheses are used in a statement or expression.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.imports.UnusedImportsCheck">
    <name><![CDATA[Unused Imports]]></name>
    <configKey><![CDATA[Checker/TreeWalker/UnusedImports]]></configKey>
    <category name="Maintainability"/>
    <description><![CDATA[Checks for unused import statements.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.UpperEllCheck">
    <name><![CDATA[Upper Ell]]></name>
    <configKey><![CDATA[Checker/TreeWalker/UpperEll]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that long constants are defined with an upper ell.]]></description>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.design.VisibilityModifierCheck">
    <name><![CDATA[Visibility Modifier]]></name>
    <configKey><![CDATA[Checker/TreeWalker/VisibilityModifier]]></configKey>
    <category name="Maintainability"/>
    <description>
      <![CDATA[Checks visibility of class members. Only static final members may be public; other class members must be private unless property protectedAllowed or packageAllowed is set.]]></description>
    <param key="packageAllowed" type="b">
      <description><![CDATA[whether package visible members are allowed]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="protectedAllowed" type="b">
      <description><![CDATA[whether protected members are allowed]]></description>
      <defaultValue><![CDATA[true]]></defaultValue>
    </param>
    <param key="publicMemberPattern" type="r">
      <description><![CDATA[pattern for public members that should be ignored]]></description>
      <defaultValue><![CDATA[^serialVersionUID$]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.WhitespaceAfterCheck">
    <name><![CDATA[Whitespace After]]></name>
    <configKey><![CDATA[Checker/TreeWalker/WhitespaceAfter]]></configKey>
    <category name="Usability"/>
    <description>
      <![CDATA[Checks that a token is followed by whitespace, with the exception that it does not check for whitespace after the semicolon of an empty for iterator.]]></description>
    <param key="tokens" type="s[COMMA,SEMI,TYPECAST]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[COMMA,SEMI,TYPECAST]]></defaultValue>
    </param>
  </rule>
  <rule key="com.puppycrawl.tools.checkstyle.checks.whitespace.WhitespaceAroundCheck">
    <name><![CDATA[Whitespace Around]]></name>
    <configKey><![CDATA[Checker/TreeWalker/WhitespaceAround]]></configKey>
    <category name="Usability"/>
    <description><![CDATA[Checks that a token is surrounded by whitespace.]]></description>
    <param key="tokens"
           type="s[ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,EQUAL,GE,GT,LAND,LCURLY,LE,LITERAL_ASSERT,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,GENERIC_START,GENERIC_END,TYPE_EXTENSION_AND,WILDCARD_TYPE]">
      <description><![CDATA[tokens to check]]></description>
      <defaultValue><![CDATA[ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,EQUAL,GE,GT,LAND,LCURLY,LE,LITERAL_ASSERT,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,GENERIC_START,GENERIC_END,TYPE_EXTENSION_AND,WILDCARD_TYPE]]></defaultValue>
    </param>
    <param key="allowEmptyConstructors" type="b">
      <description><![CDATA[allow empty constructor bodies]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
    <param key="allowEmptyMethods" type="b">
      <description><![CDATA[allow empty method bodies]]></description>
      <defaultValue><![CDATA[false]]></defaultValue>
    </param>
  </rule>
    <rule key="com.puppycrawl.tools.checkstyle.checks.javadoc.WriteTagCheck">
        <name><![CDATA[Write Tag]]></name>
        <configKey><![CDATA[Checker/TreeWalker/WriteTag]]></configKey>
        <category name="Usability"/>
        <description>
            <![CDATA[Outputs a JavaDoc tag as information. Can be used e.g. with the stylesheets that sort the report by author name. To define the format for a tag, set property tagFormat to a regular expression. This check uses two different severity levels. The normal one is used for reporting when the tag is missing. The additional one (tagSeverity) is used for the level of reporting when the tag exists.]]></description>
        <param key="tag" type="s">
            <description><![CDATA[Name of tag]]></description>
            <defaultValue><![CDATA[]]></defaultValue>
        </param>
        <param key="tagFormat" type="r">
            <description><![CDATA[Format of tag]]></description>
            <defaultValue><![CDATA[]]></defaultValue>
        </param>
        <param key="tagSeverity" type="s[ignore,info,warning,error]">
            <description><![CDATA[Severity level when tag is found and printed]]></description>
            <defaultValue><![CDATA[info]]></defaultValue>
        </param>
    </rule>
</rules>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy