OSDN Git Service

move checkstyle & pmd configs.
[mikutoga/TogaGem.git] / config / pmd / pmdrules.xml
diff --git a/config/pmd/pmdrules.xml b/config/pmd/pmdrules.xml
new file mode 100644 (file)
index 0000000..0b76658
--- /dev/null
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<!--
+    PMD用ルールセット定義
+
+    PMD [ http://pmd.sourceforge.net/ ] 5.0 以降用に記述されています。
+
+    Copyright(c) 2010 olyutorskii
+-->
+
+<ruleset
+  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"
+  name="Custom ruleset"
+>
+
+    <description>
+        custom rulesets for project
+    </description>
+
+<!--
+    <rule ref="rulesets/java/android.xml" />
+-->
+
+    <rule ref="rulesets/java/basic.xml" />
+
+    <rule ref="rulesets/java/braces.xml">
+        <exclude name="IfElseStmtsMustUseBraces" />
+        <exclude name="IfStmtsMustUseBraces" />
+    </rule>
+
+    <rule ref="rulesets/java/clone.xml" />
+
+    <rule ref="rulesets/java/codesize.xml">
+        <exclude name="TooManyMethods" />
+    </rule>
+    <rule ref="rulesets/java/codesize.xml/TooManyMethods">
+        <properties>
+            <property name="maxmethods" value="25"/>
+        </properties>
+    </rule>
+
+    <rule ref="rulesets/java/comments.xml">
+        <exclude name="CommentSize" />
+    </rule>
+    <rule ref="rulesets/java/comments.xml/CommentSize" >
+        <properties>
+            <property name="maxLines" value="25"/>
+        </properties>
+    </rule>
+
+    <rule ref="rulesets/java/controversial.xml">
+        <exclude name="NullAssignment" />
+        <exclude name="OnlyOneReturn" />
+        <exclude name="DefaultPackage" />
+        <exclude name="DataflowAnomalyAnalysis" />
+        <exclude name="AvoidUsingShortType" />
+        <exclude name="AvoidLiteralsInIfCondition" />
+        <exclude name="UseConcurrentHashMap" />
+    </rule>
+
+    <rule ref="rulesets/java/coupling.xml">
+        <exclude name="LawOfDemeter" />
+        <exclude name="LoosePackageCoupling" /> <!-- 3.0.1 では読めない -->
+    </rule>
+
+    <rule ref="rulesets/java/design.xml">
+        <exclude name="ConfusingTernary" />
+        <exclude name="UnnecessaryLocalBeforeReturn" />
+        <exclude name="FieldDeclarationsShouldBeAtStartOfClass" />
+    </rule>
+
+    <rule ref="rulesets/java/empty.xml" />
+
+    <rule ref="rulesets/java/finalizers.xml" />
+
+    <rule ref="rulesets/java/imports.xml" />
+
+<!--
+    <rule ref="rulesets/java/j2ee.xml" />
+    <rule ref="rulesets/java/javabeans.xml" />
+-->
+
+    <rule ref="rulesets/java/junit.xml" />
+
+<!--
+    <rule ref="rulesets/java/logging-jakarta-commons.xml" />
+-->
+
+    <rule ref="rulesets/java/logging-java.xml" />
+
+    <rule ref="rulesets/java/migrating.xml" />
+<!--
+    <rule ref="rulesets/java/migrating_to_XX.xml" />
+-->
+
+    <rule ref="rulesets/java/naming.xml">
+        <exclude name="ShortVariable" />
+        <exclude name="LongVariable" />
+        <exclude name="AvoidFieldNameMatchingMethodName" />
+    </rule>
+    <rule ref="rulesets/java/naming.xml/LongVariable">
+        <properties>
+            <property name="minimum" value="25"/>
+        </properties>
+    </rule>
+
+    <rule ref="rulesets/java/optimizations.xml">
+        <exclude name="LocalVariableCouldBeFinal" />
+        <exclude name="MethodArgumentCouldBeFinal" />
+        <exclude name="RedundantFieldInitializer" />
+    </rule>
+
+    <rule ref="rulesets/java/strictexception.xml">
+        <exclude name="AvoidThrowingNullPointerException" />
+    </rule>
+
+    <rule ref="rulesets/java/strings.xml" />
+
+    <rule ref="rulesets/java/sunsecure.xml" />
+
+    <rule ref="rulesets/java/typeresolution.xml" />
+
+    <rule ref="rulesets/java/unnecessary.xml">
+        <exclude name="UnnecessaryReturn" />
+        <exclude name="UselessParentheses" />
+    </rule>
+
+    <rule ref="rulesets/java/unusedcode.xml" />
+
+</ruleset>
+
+<!-- EOF -->