This repository was archived by the owner on Jul 4, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathruleset.xml
More file actions
113 lines (104 loc) · 4.52 KB
/
ruleset.xml
File metadata and controls
113 lines (104 loc) · 4.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<?xml version="1.0"?>
<ruleset name="Green2 ruleset"
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>
Green2 customized ruleset.
</description>
<!-- Java Best practices -->
<rule ref="category/java/bestpractices.xml">
<exclude name="GuardLogStatement" /> <!-- java.util.logging.Logger do not need to be guarded -->
</rule>
<!-- Java Codestyle -->
<rule ref="category/java/codestyle.xml">
<exclude name="AbstractNaming" /> <!-- Deprecated -->
<exclude name="AtLeastOneConstructor" />
<exclude name="CommentDefaultAccessModifier" />
<exclude name="ForLoopsMustUseBraces" /> <!-- Deprecated -->
<exclude name="IfElseStmtsMustUseBraces" /> <!-- Deprecated -->
<exclude name="IfStmtsMustUseBraces" /> <!-- Deprecated -->
<exclude name="LocalVariableCouldBeFinal" />
<exclude name="MethodArgumentCouldBeFinal" />
<exclude name="WhileLoopsMustUseBraces" /> <!-- Deprecated -->
</rule>
<rule ref="category/java/codestyle.xml/ClassNamingConventions">
<properties>
<property name="utilityClassPattern"
value="[A-Z][a-zA-Z0-9]+(Utils?|Helper|Utility|Generator)" />
<property name="violationSuppressXPath"
value="(.[ends-with(@Image,'Constants')])" /> <!-- FIXME Force to suppress only for inner classes. -->
</properties>
</rule>
<rule ref="category/java/codestyle.xml/LongVariable">
<properties>
<property name="minimum"
value="25" />
</properties>
</rule>
<rule ref="category/java/codestyle.xml/TooManyStaticImports">
<properties>
<property name="maximumStaticImports"
value="0" />
</properties>
</rule>
<!-- Java Design -->
<rule ref="category/java/design.xml">
<exclude name="LawOfDemeter" />
<exclude name="LoosePackageCoupling" /> <!-- FIXME: How to use this rule correctly? -->
<exclude name="ModifiedCyclomaticComplexity" /> <!-- Deprecated -->
<exclude name="NcssConstructorCount" /> <!-- Deprecated -->
<exclude name="NcssMethodCount" /> <!-- Deprecated -->
<exclude name="NcssTypeCount" /> <!-- Deprecated -->
<exclude name="StdCyclomaticComplexity" /> <!-- Deprecated -->
</rule>
<rule ref="category/java/design.xml/NcssCount">
<properties>
<property name="methodReportLevel" value="60" /> <!-- 60 is PMD's default value -->
</properties>
</rule>
<!-- Java Documentation -->
<rule ref="category/java/documentation.xml" />
<rule ref="category/java/documentation.xml/CommentRequired">
<properties>
<property name="fieldCommentRequirement"
value="Ignored" />
<property name="accessorCommentRequirement"
value="Required" />
</properties>
</rule>
<rule ref="category/java/documentation.xml/CommentSize">
<properties>
<property name="maxLineLength"
value="120" />
<property name="maxLines"
value="16" /> <!-- NOTE: The default header Gpl v3 has 16 lines -->
</properties>
</rule>
<!-- Java Error Prone -->
<rule ref="category/java/errorprone.xml">
<exclude name="BeanMembersShouldSerialize" />
<exclude name="CallSuperLast" />
<exclude name="DataflowAnomalyAnalysis" /> <!-- NOTE May include it at some point again -->
<!-- See https://github.com/pmd/pmd/issues/1304#issuecomment-412925368 -->
</rule>
<rule ref="category/java/errorprone.xml/AvoidDuplicateLiterals">
<properties>
<property name="skipAnnotations" value="true" />
</properties>
</rule>
<rule ref="category/java/errorprone.xml/ProperLogger">
<properties>
<property name="staticLoggerName" value="LOGGER" />
</properties>
</rule>
<!-- Java Multithreading -->
<rule ref="category/java/multithreading.xml" />
<!-- Java Performance -->
<rule ref="category/java/performance.xml" />
<!-- Java Security -->
<rule ref="category/java/security.xml" />
<!-- POM Error Prone -->
<!-- <rule ref="category/pom/errorprone.xml" /> -->
</ruleset>