<?xml version="1.0"?>
<ruleset name="DMDirc PMD checks"
	 xmlns="http://pmd.sf.net/ruleset/1.0.0"
	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	 xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
	 xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
	<description>DMDirc PMD checks.</description>
	
	<rule ref="rulesets/basic.xml"/>
	<rule ref="rulesets/braces.xml"/>
	<rule ref="rulesets/clone.xml"/>
	<rule ref="rulesets/codesize.xml"/>
	<rule ref="rulesets/controversial.xml">
		<exclude name="DataflowAnomalyAnalysis"/>
                <exclude name="OnlyOneReturn"/>
                <exclude name="NullAssignment"/>
                <exclude name="UnnecessaryConstructor"/>
		<exclude name="AvoidFinalLocalVariable"/>
	</rule>
	<rule ref="rulesets/coupling.xml"/>
	<rule ref="rulesets/design.xml"/>
	<rule ref="rulesets/finalizers.xml"/>
	<rule ref="rulesets/imports.xml"/>
        <rule ref="rulesets/javabeans.xml">
                <exclude name="BeanMembersShouldSerialize"/>
        </rule>
	<rule ref="rulesets/junit.xml"/>
	<rule ref="rulesets/logging-java.xml"/>
	<rule ref="rulesets/migrating.xml"/>
	<rule ref="rulesets/naming.xml">
                <exclude name="ShortVariable"/>
                <exclude name="LongVariable"/>
                <exclude name="AbstractNaming"/>
        </rule>
	<rule ref="rulesets/optimizations.xml">
                <exclude name="AvoidInstantiatingObjectsInLoops"/>
        </rule>
	<rule ref="rulesets/strings.xml">
                <exclude name="AvoidDuplicateLiterals"/>
        </rule>
	<rule ref="rulesets/sunsecure.xml"/>
	<rule ref="rulesets/typeresolution.xml"/>
	<rule ref="rulesets/unusedcode.xml"/>
</ruleset>
