<?xml version="1.0"?>
<ruleset name="PMD ruleset for Checkstyle"
        xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0
         http://pmd.sourceforge.net/ruleset_2_0_0.xsd">
  <description>
    PMD common ruleset for Checkstyle main/test sourcesets
  </description>
  <rule ref="rulesets/java/basic.xml"/>
  <rule ref="rulesets/java/braces.xml"/>
  <rule ref="rulesets/java/clone.xml"/>
  <rule ref="rulesets/java/codesize.xml">
    <!-- we are using CyclomaticComplexity -->
    <exclude name="ModifiedCyclomaticComplexity"/>
    <!-- we are using CyclomaticComplexity -->
    <exclude name="StdCyclomaticComplexity"/>
  </rule>

  <rule ref="rulesets/java/codesize.xml/CyclomaticComplexity">
    <properties>
      <property name="showClassesComplexity" value="false"/>
      <property name="reportLevel" value="11"/>
      <!-- DeclarationOrder - 'visitToken' has just big SWITCH block which contains IF blocks.
           If we split the block to several methods it will demage readibility.
           validateCli is not reasonable to split as encapsulation of logic will be damaged
           getDetails - huge Switch, it has to be monolithic
           JavadocMethodCheck, JavadocStyleCheck, JavadocUtils.getJavadocTags() - deprecated
           FinalLocalVariableCheck.visitToken() - it is just big switch , not could be done
           GenericWhitespaceCheck.processSingleGeneric() - it contains a lot of similar to each other and very simple condition
           VariableDeclarationUsageDistanceCheck, CustomImportOrderCheck - it is not OK to have such a complicated logic need to be refactored.
      -->
      <property name="violationSuppressXPath" value="//DeclarationOrder[@Name='visitToken'] and //MethodDeclaration[@Name='validateCli' and ../../..[@Image='Main']] | //MethodDeclaration[@Name='processSingleGeneric' and ../../..[@Image='GenericWhitespaceCheck']] | //MethodDeclaration[@Name='visitToken' and ../../..[@Image='FinalLocalVariableCheck']] | //MethodDeclaration[@Name='getJavadocTags' and ../../..[@Image='JavadocUtils']] | //MethodDeclaration[@Name='getDetails' and ../../..[@Image='RightCurlyCheck']] | //ClassOrInterfaceDeclaration[@Image='JavadocMethodCheck' or @Image='JavadocStyleCheck' or @Image='VariableDeclarationUsageDistanceCheck' or @Image='CustomImportOrderCheck']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/codesize.xml/NPathComplexity">
    <properties>
      <!-- JavadocMethodCheck - deprecated
           WhitespaceAroundCheck.isNotRelevantSituation - npath = 216, but additional extraction
                                of expression to separate method does not make sense as it will
                                damage encapsulation of that check.
      -->
      <property name="violationSuppressXPath" value="//MethodDeclaration[@Name='isNotRelevantSituation' and ../../..[@Image='WhitespaceAroundCheck']] | //MethodDeclaration[@Name='validateCli' and ../../..[@Image='Main']] | //ClassOrInterfaceDeclaration[@Image='JavadocMethodCheck' or @Image='JavadocStyleCheck']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/codesize.xml/TooManyFields">
    <properties>
      <!-- Unable to split fields out of class. -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='Checker']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/codesize.xml/TooManyMethods">
    <properties>
      <property name="maxmethods" value="20"/>
      <!-- Reducing the number of methods in RequireThisCheck requires making excess hierarchy or duplicating code, or making existing methods too complex. -->
      <!-- PackageObjectFactory has many boilerplate methods. -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='RequireThisCheck' or @Image='PackageObjectFactory']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/codesize.xml/ExcessiveClassLength">
    <properties>
      <!-- *TokenTypes are special classes that a big due to a lot of description comments -->
      <!-- JavadocMethodCheck is deprecated class, till it is redone to use JavadocAst -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='JavadocTokenTypes' or @Image='TokenTypes' or @Image='JavadocMethodCheck' or @Image='RequireThisCheck']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/codesize.xml/ExcessiveMethodLength">
    <properties>
      <!-- JavadocMethodCheck is deprecated class, till it is redone to use JavadocAst -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='JavadocMethodCheck']"/>
      <!-- getDetails() method is a huge SWITCH, it has to be monolithic -->
      <property name="violationSuppressXPath" value="//MethodDeclaration[@Name='getDetails' and ../../..[@Image='RightCurlyCheck']]"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/codesize.xml/ExcessiveParameterList">
    <properties>
      <!-- LocalizedMessage class has constructor with many parameters -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='LocalizedMessage']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/comments.xml">
    <!-- <exclude name="CommentRequired"/> -->
    <!-- we use class comments as source for xdoc files, so content is big and that is by design -->
    <exclude name="CommentSize"/>
  </rule>
  <rule ref="rulesets/java/comments.xml/CommentRequired">
    <properties>
      <!-- *TokenTypes are special class, comments are as trailing comments -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='JavadocTokenTypes'] | //Annotation/MarkerAnnotation//Name[@Image='Override']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/comments.xml/CommentSize">
    <properties>
      <!-- we use class comments as source for xdoc files, so content is big and that is by design -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration | //PackageDeclaration | //ClassOrInterfaceDeclaration[@Image='JavadocTagInfo'] | //ClassOrInterfaceDeclaration[@Image='SeverityLevel'] | //ClassOrInterfaceDeclaration[@Image='LeftCurlyOption'] | //ClassOrInterfaceDeclaration[@Image='RightCurlyOption'] | //ClassOrInterfaceDeclaration[@Image='ImportOrderOption']"/>
      <property name="maxLines" value="8"/>
      <property name="maxLineLength" value="100"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/controversial.xml">
    <!-- calling super() is completely pointless, no matter if class inherits anything or not; it is meaningful only if you do not call implicit constructor of base class -->
    <exclude name="CallSuperInConstructor"/>
    <!-- We reuse Check instances between java files, we need to clear state of class in beginTree() methods -->
    <exclude name="NullAssignment"/>
    <!-- it is possible only in functional languages and fanatically-pristine code, without additional option that are done at ReturnCountExtendedCheck it is not good rule -->
    <exclude name="OnlyOneReturn"/>
    <!-- opposite to UnnecessaryConstructor -->
    <exclude name="AtLeastOneConstructor"/>
    <!-- that rule is too buggy, too much false positives-->
    <exclude name="DataflowAnomalyAnalysis"/>
    <!-- turning local variables to fields create design problems and extend scope of variable -->
    <exclude name="AvoidFinalLocalVariable"/>
    <!-- conflicts with names that does not mean in/out -->
    <exclude name="AvoidPrefixingMethodParameters"/>
    <!-- that is not practical, no options to allow some magic numbers, we will use our implementation -->
    <exclude name="AvoidLiteralsInIfCondition"/>
    <!-- Checkstyle is not thread safe -->
    <exclude name="UseConcurrentHashMap"/>
  </rule>
  <rule ref="rulesets/java/controversial.xml/AvoidUsingShortType">
    <properties>
      <!-- that class integrates checkstyle and antlr that is why it has a lot of imports -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='AutomaticBean']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/coupling.xml">
    <!-- produce too much violations, suppressed till we figure out how useful that metrics-->
    <exclude name="LawOfDemeter"/>
    <!-- this rule is for managing import, we have special Check for that -->
    <exclude name="LoosePackageCoupling"/>
  </rule>
  <rule ref="rulesets/java/coupling.xml/ExcessiveImports">
    <properties>
      <!-- TreeWalker integrates Checkstyle and antlr and CheckstyleAntTask integrates Checkstyle
       with Ant. Checker collects external resource locations and setup configuration. -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='TreeWalker' or @Image='CheckstyleAntTask' or @Image='Checker' or @Image='Main']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/coupling.xml/CouplingBetweenObjects">
    <properties>
      <!-- I do not see any problem , looks like false positive -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='HandlerFactory']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/design.xml">
    <!-- extra final modifier does not make code more secure in that cases-->
    <exclude name="ImmutableField"/>
    <!-- this rule does not have any option, unreasonable to use -->
    <exclude name="MissingBreakInSwitch"/>
    <!-- we need compare by ref as Tree structure is immutable, we can easily rely on refs -->
    <exclude name="CompareObjectsWithEquals"/>
    <!-- we will use our own declaration order logic -->
    <exclude name="FieldDeclarationsShouldBeAtStartOfClass"/>
    <!-- too much alarms of Checks, we will never move logic out of Check, each Check is independent logic container -->
    <exclude name="GodClass"/>
    <!--we do not care about this minor overhead, we are not Android application and we do not want to change
     visibility of methods. Package-private visibility should be avoid almost always.-->
    <exclude name="AccessorMethodGeneration"/>
  </rule>

  <rule ref="rulesets/java/design.xml/ConfusingTernary">
    <properties>
     <!-- false positives on IF_ELSE-IF-ELSE-IF -->
    <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='XMLLogger']//MethodDeclarator[@Image='isReference'] | //ClassOrInterfaceDeclaration[@Image='DetailAST']//MethodDeclarator[@Image='addPreviousSibling'] | //ClassOrInterfaceDeclaration[@Image='AnnotationLocationCheck']//MethodDeclarator[@Image='checkAnnotations'] | //ClassOrInterfaceDeclaration[@Image='ImportControl']//MethodDeclarator[@Image='checkAccess'] | //ClassOrInterfaceDeclaration[@Image='HandlerFactory']//MethodDeclarator[@Image='getHandler']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/design.xml/AccessorClassGeneration">
    <properties>
      <!-- We do instantiation by way of private constructors from outside of the constructor’s
      class in DetectorOptions intentionally as it is a whole idea of Builder pattern. -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='DetectorOptions']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/design.xml/PreserveStackTrace">
    <properties>
     <!-- yes we swallow one exception and try to do another attempt, second attempt does not hide cause -->
    <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='PackageObjectFactory']//MethodDeclarator[@Image='createModule']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/design.xml/EmptyMethodInAbstractClassShouldBeAbstract">
    <properties>
     <!-- Can not change API -->
    <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='AbstractFileSetCheck'
    or @Image='AbstractCheck' or @Image='AbstractJavadocCheck' or @Image='AbstractNode' or @Image='AbstractViolationReporter']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/design.xml/AvoidDeeplyNestedIfStmts">
    <properties>
      <!-- default is 3 but we try to use single point of exit from method and that require extra IFs -->
      <property name="problemDepth" value="4"/>
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='ClassResolver']//MethodDeclarator[@Image='resolve']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/design.xml/AvoidSynchronizedAtMethodLevel">
    <properties>
      <!-- UniqueProperties#put overloads synchronized method, so it should have synchronized modifier -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='UniqueProperties']//MethodDeclarator[@Image='put']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/empty.xml"/>
  <rule ref="rulesets/java/empty.xml/EmptyCatchBlock">
    <properties>
      <property name="allowCommentedBlocks" value="true"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/finalizers.xml"/>
  <rule ref="rulesets/java/imports.xml"/>
  <rule ref="rulesets/java/javabeans.xml">
    <!-- too many false-positives -->
    <exclude name="BeanMembersShouldSerialize"/>
  </rule>
  <rule ref="rulesets/java/logging-jakarta-commons.xml"/>

  <rule ref="rulesets/java/logging-java.xml"/>
  <rule ref="rulesets/java/logging-java.xml/SystemPrintln">
    <properties>
      <!-- it is ok to use println in CLI class -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='Main']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/logging-java.xml/AvoidPrintStackTrace">
    <properties>
      <!-- it is ok to use print stack trace in CLI class -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='Main']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/migrating.xml"/>

  <rule ref="rulesets/java/naming.xml">
    <!-- we use CheckstyleCustomShortVariable, to control lenght (will be fixed in PMD 5.4) and skip Override methods -->
    <exclude name="ShortVariable"/>
  </rule>
<rule name="CheckstyleCustomShortVariable"
      message="Avoid variables with short names that shorter than 2 symbols: {0}"
      language="java"
      class="net.sourceforge.pmd.lang.rule.XPathRule"
      externalInfoUrl="">
<description>
   Fields, local variables, or parameter names that are very short are not helpful to the reader.
</description>
<priority>3</priority>
<properties>
   <property name="xpath">
       <value>
           <![CDATA[
 //VariableDeclaratorId[string-length(@Image) < 2]
 [not(ancestor::ForInit)]
 [not(../../VariableDeclarator and ../../../LocalVariableDeclaration and ../../../../ForStatement)]
 [not((ancestor::FormalParameter) and (ancestor::TryStatement))]
 [not(ancestor::ClassOrInterfaceDeclaration[//MarkerAnnotation/Name[pmd-java:typeof(@Image, 'java.lang.Override', 'Override')]])]
            ]]>
       </value>
   </property>
</properties>
</rule>
  <rule ref="rulesets/java/naming.xml/AbstractNaming">
    <properties>
     <!-- We can not brake compatibility with previous versions -->
     <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='AbstractClassNameCheck' or @Image='AutomaticBean']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/naming.xml/LongVariable">
    <properties>
      <!-- nothing bad in long and descriptive variable names if only they fit line, but still keep it reasonable -->
      <property name="minimum" value="45"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/naming.xml/ShortClassName">
    <properties>
      <!-- Main is good name for class containing main method, Tag as inner class name is also fine -->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='Main' or @Image='Tag']"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/optimizations.xml">
    <!--produces more false-positives than real problems-->
    <exclude name="AvoidInstantiatingObjectsInLoops"/>
    <!--pollutes code with modifiers-->
    <exclude name="LocalVariableCouldBeFinal"/>
    <!--pollutes code with modifiers-->
    <exclude name="MethodArgumentCouldBeFinal"/>
    <!--not configurable, decreases readability-->
    <exclude name="UseStringBufferForStringAppends"/>
  </rule>
  <rule ref="rulesets/java/strictexception.xml/AvoidCatchingGenericException">
    <properties>
      <!-- There is no other way to deliver filename that was under processing.
           See https://github.com/checkstyle/checkstyle/issues/2285-->
      <property name="violationSuppressXPath" value="//MethodDeclaration[@Name='processFiles' and ../../..[@Image='Checker']]"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/strictexception.xml/AvoidThrowingRawExceptionTypes">
    <properties>
      <!-- There is no other way to deliver filename that was under processing.
           See https://github.com/checkstyle/checkstyle/issues/2285-->
      <property name="violationSuppressXPath" value="//MethodDeclaration[@Name='processFiles' and ../../..[@Image='Checker']]"/>
    </properties>
  </rule>

  <rule ref="rulesets/java/strings.xml"/>
  <rule ref="rulesets/java/strings.xml/AvoidDuplicateLiterals">
    <properties>
      <!-- Annotations like '@SuppressWarnings' don't need to be checked, it is better to keep their strings
           connected to the annotation instead of separating. -->
      <property name="skipAnnotations" value="true"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/sunsecure.xml/MethodReturnsInternalArray">
    <properties>
      <!--It's not important when array is empty-->
      <property name="violationSuppressXPath" value="//ClassOrInterfaceDeclaration[@Image='JavadocNodeImpl']"/>
    </properties>
  </rule>
  <rule ref="rulesets/java/typeresolution.xml"/>
  <rule ref="rulesets/java/unnecessary.xml"/>
  <rule ref="rulesets/java/unusedcode.xml"/>

</ruleset>
