<?xml version="1.0"?>

<ruleset name="Controversial"
    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>
The Controversial ruleset contains rules that, for whatever reason, are considered controversial.
They are held here to allow people to include them as they see fit within their custom rulesets.
  </description>

    <!-- Rules, that have been moved into a category -->
    <rule ref="category/java/errorprone.xml/AssignmentInOperand" deprecated="true" />
    <rule ref="category/java/errorprone.xml/AvoidAccessibilityAlteration" deprecated="true" />
    <rule ref="category/java/errorprone.xml/AvoidLiteralsInIfCondition" deprecated="true" />
    <rule ref="category/java/errorprone.xml/DataflowAnomalyAnalysis" deprecated="true" />
    <rule ref="category/java/errorprone.xml/DoNotCallGarbageCollectionExplicitly" deprecated="true" />
    <rule ref="category/java/errorprone.xml/DontImportSun" deprecated="true" />
    <rule ref="category/java/errorprone.xml/NullAssignment" deprecated="true" />
    <rule ref="category/java/errorprone.xml/SuspiciousOctalEscape" deprecated="true" />

    <rule ref="category/java/codestyle.xml/AtLeastOneConstructor" deprecated="true" />
    <rule ref="category/java/codestyle.xml/AvoidFinalLocalVariable" deprecated="true" />
    <rule ref="category/java/codestyle.xml/AvoidPrefixingMethodParameters" deprecated="true" />
    <rule ref="category/java/codestyle.xml/AvoidUsingNativeCode" deprecated="true" />
    <rule ref="category/java/codestyle.xml/CallSuperInConstructor" deprecated="true" />
    <rule ref="category/java/codestyle.xml/DefaultPackage" deprecated="true" />
    <rule ref="category/java/codestyle.xml/OnlyOneReturn" deprecated="true" />
    <rule ref="category/java/codestyle.xml/UnnecessaryConstructor" deprecated="true" />

    <rule ref="category/java/multithreading.xml/AvoidUsingVolatile" deprecated="true" />
    <rule ref="category/java/multithreading.xml/UseConcurrentHashMap" deprecated="true" />

    <rule ref="category/java/bestpractices.xml/OneDeclarationPerLine" deprecated="true" />

    <rule ref="category/java/performance.xml/AvoidUsingShortType" deprecated="true" />

    <rule ref="category/java/design.xml/UseObjectForClearerAPI" deprecated="true" />

    <!-- The rule UnnecessaryParentheses has been merged into unnecessary.xml/UselessParentheses -->
    <rule name="UnnecessaryParentheses" deprecated="true" ref="rulesets/java/unnecessary.xml/UselessParentheses" />

</ruleset>
