1 <?xml version="1.0" encoding="UTF-8"?>
3 <useProjectRuleSet>false</useProjectRuleSet>
4 <ruleSetFile>.ruleset</ruleSetFile>
7 <name>LooseCoupling</name>
8 <ruleset>Type Resolution Rules</ruleset>
11 <name>CloneMethodMustImplementCloneable</name>
12 <ruleset>Type Resolution Rules</ruleset>
15 <name>UnusedImports</name>
16 <ruleset>Type Resolution Rules</ruleset>
19 <name>SignatureDeclareThrowsException</name>
20 <ruleset>Type Resolution Rules</ruleset>
23 <name>IfStmtsMustUseBraces</name>
24 <ruleset>Braces Rules</ruleset>
27 <name>WhileLoopsMustUseBraces</name>
28 <ruleset>Braces Rules</ruleset>
31 <name>IfElseStmtsMustUseBraces</name>
32 <ruleset>Braces Rules</ruleset>
35 <name>ForLoopsMustUseBraces</name>
36 <ruleset>Braces Rules</ruleset>
39 <name>UnnecessaryConstructor</name>
40 <ruleset>Controversial Rules</ruleset>
43 <name>NullAssignment</name>
44 <ruleset>Controversial Rules</ruleset>
47 <name>OnlyOneReturn</name>
48 <ruleset>Controversial Rules</ruleset>
51 <name>UnusedModifier</name>
52 <ruleset>Controversial Rules</ruleset>
55 <name>AssignmentInOperand</name>
56 <ruleset>Controversial Rules</ruleset>
59 <name>AtLeastOneConstructor</name>
60 <ruleset>Controversial Rules</ruleset>
63 <name>DontImportSun</name>
64 <ruleset>Controversial Rules</ruleset>
67 <name>SuspiciousOctalEscape</name>
68 <ruleset>Controversial Rules</ruleset>
71 <name>CallSuperInConstructor</name>
72 <ruleset>Controversial Rules</ruleset>
75 <name>UnnecessaryParentheses</name>
76 <ruleset>Controversial Rules</ruleset>
79 <name>DefaultPackage</name>
80 <ruleset>Controversial Rules</ruleset>
83 <name>BooleanInversion</name>
84 <ruleset>Controversial Rules</ruleset>
87 <name>DataflowAnomalyAnalysis</name>
88 <ruleset>Controversial Rules</ruleset>
91 <name>AvoidFinalLocalVariable</name>
92 <ruleset>Controversial Rules</ruleset>
95 <name>AvoidUsingShortType</name>
96 <ruleset>Controversial Rules</ruleset>
99 <name>AvoidUsingVolatile</name>
100 <ruleset>Controversial Rules</ruleset>
103 <name>AvoidUsingNativeCode</name>
104 <ruleset>Controversial Rules</ruleset>
107 <name>AvoidAccessibilityAlteration</name>
108 <ruleset>Controversial Rules</ruleset>
111 <name>DoNotCallGarbageCollectionExplicitly</name>
112 <ruleset>Controversial Rules</ruleset>
115 <name>EmptyCatchBlock</name>
116 <ruleset>Basic Rules</ruleset>
119 <name>EmptyIfStmt</name>
120 <ruleset>Basic Rules</ruleset>
123 <name>EmptyWhileStmt</name>
124 <ruleset>Basic Rules</ruleset>
127 <name>EmptyTryBlock</name>
128 <ruleset>Basic Rules</ruleset>
131 <name>EmptyFinallyBlock</name>
132 <ruleset>Basic Rules</ruleset>
135 <name>EmptySwitchStatements</name>
136 <ruleset>Basic Rules</ruleset>
139 <name>JumbledIncrementer</name>
140 <ruleset>Basic Rules</ruleset>
143 <name>ForLoopShouldBeWhileLoop</name>
144 <ruleset>Basic Rules</ruleset>
147 <name>UnnecessaryConversionTemporary</name>
148 <ruleset>Basic Rules</ruleset>
151 <name>OverrideBothEqualsAndHashcode</name>
152 <ruleset>Basic Rules</ruleset>
155 <name>DoubleCheckedLocking</name>
156 <ruleset>Basic Rules</ruleset>
159 <name>ReturnFromFinallyBlock</name>
160 <ruleset>Basic Rules</ruleset>
163 <name>EmptySynchronizedBlock</name>
164 <ruleset>Basic Rules</ruleset>
167 <name>UnnecessaryReturn</name>
168 <ruleset>Basic Rules</ruleset>
171 <name>EmptyStaticInitializer</name>
172 <ruleset>Basic Rules</ruleset>
175 <name>UnconditionalIfStatement</name>
176 <ruleset>Basic Rules</ruleset>
179 <name>EmptyStatementNotInLoop</name>
180 <ruleset>Basic Rules</ruleset>
183 <name>BooleanInstantiation</name>
184 <ruleset>Basic Rules</ruleset>
187 <name>UnnecessaryFinalModifier</name>
188 <ruleset>Basic Rules</ruleset>
191 <name>CollapsibleIfStatements</name>
192 <ruleset>Basic Rules</ruleset>
195 <name>UselessOverridingMethod</name>
196 <ruleset>Basic Rules</ruleset>
199 <name>ClassCastExceptionWithToArray</name>
200 <ruleset>Basic Rules</ruleset>
203 <name>AvoidDecimalLiteralsInBigDecimalConstructor</name>
204 <ruleset>Basic Rules</ruleset>
207 <name>UselessOperationOnImmutable</name>
208 <ruleset>Basic Rules</ruleset>
211 <name>MisplacedNullCheck</name>
212 <ruleset>Basic Rules</ruleset>
215 <name>UnusedNullCheckInEquals</name>
216 <ruleset>Basic Rules</ruleset>
219 <name>AvoidThreadGroup</name>
220 <ruleset>Basic Rules</ruleset>
223 <name>BrokenNullCheck</name>
224 <ruleset>Basic Rules</ruleset>
227 <name>BigIntegerInstantiation</name>
228 <ruleset>Basic Rules</ruleset>
231 <name>AvoidUsingOctalValues</name>
232 <ruleset>Basic Rules</ruleset>
235 <name>AvoidUsingHardCodedIP</name>
236 <ruleset>Basic Rules</ruleset>
239 <name>CheckResultSet</name>
240 <ruleset>Basic Rules</ruleset>
243 <name>AvoidMultipleUnaryOperators</name>
244 <ruleset>Basic Rules</ruleset>
247 <name>UnusedPrivateField</name>
248 <ruleset>Unused Code Rules</ruleset>
251 <name>UnusedLocalVariable</name>
252 <ruleset>Unused Code Rules</ruleset>
255 <name>UnusedPrivateMethod</name>
256 <ruleset>Unused Code Rules</ruleset>
259 <name>UnusedFormalParameter</name>
260 <ruleset>Unused Code Rules</ruleset>
263 <name>MoreThanOneLogger</name>
264 <ruleset>Java Logging Rules</ruleset>
267 <name>LoggerIsNotStaticFinal</name>
268 <ruleset>Java Logging Rules</ruleset>
271 <name>SystemPrintln</name>
272 <ruleset>Java Logging Rules</ruleset>
275 <name>AvoidPrintStackTrace</name>
276 <ruleset>Java Logging Rules</ruleset>
279 <name>AvoidCatchingThrowable</name>
280 <ruleset>Strict Exception Rules</ruleset>
283 <name>SignatureDeclareThrowsException</name>
284 <ruleset>Type Resolution Rules</ruleset>
287 <name>ExceptionAsFlowControl</name>
288 <ruleset>Strict Exception Rules</ruleset>
291 <name>AvoidCatchingNPE</name>
292 <ruleset>Strict Exception Rules</ruleset>
295 <name>AvoidThrowingRawExceptionTypes</name>
296 <ruleset>Strict Exception Rules</ruleset>
299 <name>AvoidThrowingNullPointerException</name>
300 <ruleset>Strict Exception Rules</ruleset>
303 <name>AvoidRethrowingException</name>
304 <ruleset>Strict Exception Rules</ruleset>
307 <name>DoNotExtendJavaLangError</name>
308 <ruleset>Strict Exception Rules</ruleset>
311 <name>DoNotThrowExceptionInFinally</name>
312 <ruleset>Strict Exception Rules</ruleset>
315 <name>ReplaceVectorWithList</name>
316 <ruleset>Migration Rules</ruleset>
319 <name>ReplaceHashtableWithMap</name>
320 <ruleset>Migration Rules</ruleset>
323 <name>ReplaceEnumerationWithIterator</name>
324 <ruleset>Migration Rules</ruleset>
327 <name>AvoidEnumAsIdentifier</name>
328 <ruleset>Migration Rules</ruleset>
331 <name>AvoidAssertAsIdentifier</name>
332 <ruleset>Migration Rules</ruleset>
335 <name>IntegerInstantiation</name>
336 <ruleset>Migration Rules</ruleset>
339 <name>ByteInstantiation</name>
340 <ruleset>Migration Rules</ruleset>
343 <name>ShortInstantiation</name>
344 <ruleset>Migration Rules</ruleset>
347 <name>LongInstantiation</name>
348 <ruleset>Migration Rules</ruleset>
351 <name>JUnit4TestShouldUseBeforeAnnotation</name>
352 <ruleset>Migration Rules</ruleset>
355 <name>JUnit4TestShouldUseAfterAnnotation</name>
356 <ruleset>Migration Rules</ruleset>
359 <name>JUnit4TestShouldUseTestAnnotation</name>
360 <ruleset>Migration Rules</ruleset>
363 <name>JUnit4SuitesShouldUseSuiteAnnotation</name>
364 <ruleset>Migration Rules</ruleset>
367 <name>JUnitUseExpected</name>
368 <ruleset>Migration Rules</ruleset>
371 <name>UseSingleton</name>
372 <ruleset>Design Rules</ruleset>
375 <name>SimplifyBooleanReturns</name>
376 <ruleset>Design Rules</ruleset>
379 <name>SimplifyBooleanExpressions</name>
380 <ruleset>Design Rules</ruleset>
383 <name>SwitchStmtsShouldHaveDefault</name>
384 <ruleset>Design Rules</ruleset>
387 <name>AvoidDeeplyNestedIfStmts</name>
388 <ruleset>Design Rules</ruleset>
391 <name>AvoidReassigningParameters</name>
392 <ruleset>Design Rules</ruleset>
395 <name>SwitchDensity</name>
396 <ruleset>Design Rules</ruleset>
399 <name>ConstructorCallsOverridableMethod</name>
400 <ruleset>Design Rules</ruleset>
403 <name>AccessorClassGeneration</name>
404 <ruleset>Design Rules</ruleset>
407 <name>FinalFieldCouldBeStatic</name>
408 <ruleset>Design Rules</ruleset>
411 <name>CloseResource</name>
412 <ruleset>Design Rules</ruleset>
415 <name>NonStaticInitializer</name>
416 <ruleset>Design Rules</ruleset>
419 <name>DefaultLabelNotLastInSwitchStmt</name>
420 <ruleset>Design Rules</ruleset>
423 <name>NonCaseLabelInSwitchStatement</name>
424 <ruleset>Design Rules</ruleset>
427 <name>OptimizableToArrayCall</name>
428 <ruleset>Design Rules</ruleset>
431 <name>BadComparison</name>
432 <ruleset>Design Rules</ruleset>
435 <name>EqualsNull</name>
436 <ruleset>Design Rules</ruleset>
439 <name>ConfusingTernary</name>
440 <ruleset>Design Rules</ruleset>
443 <name>InstantiationToGetClass</name>
444 <ruleset>Design Rules</ruleset>
447 <name>IdempotentOperations</name>
448 <ruleset>Design Rules</ruleset>
451 <name>SimpleDateFormatNeedsLocale</name>
452 <ruleset>Design Rules</ruleset>
455 <name>ImmutableField</name>
456 <ruleset>Design Rules</ruleset>
459 <name>UseLocaleWithCaseConversions</name>
460 <ruleset>Design Rules</ruleset>
463 <name>AvoidProtectedFieldInFinalClass</name>
464 <ruleset>Design Rules</ruleset>
467 <name>AssignmentToNonFinalStatic</name>
468 <ruleset>Design Rules</ruleset>
471 <name>MissingStaticMethodInNonInstantiatableClass</name>
472 <ruleset>Design Rules</ruleset>
475 <name>AvoidSynchronizedAtMethodLevel</name>
476 <ruleset>Design Rules</ruleset>
479 <name>MissingBreakInSwitch</name>
480 <ruleset>Design Rules</ruleset>
483 <name>UseNotifyAllInsteadOfNotify</name>
484 <ruleset>Design Rules</ruleset>
487 <name>AvoidInstanceofChecksInCatchClause</name>
488 <ruleset>Design Rules</ruleset>
491 <name>AbstractClassWithoutAbstractMethod</name>
492 <ruleset>Design Rules</ruleset>
495 <name>SimplifyConditional</name>
496 <ruleset>Design Rules</ruleset>
499 <name>CompareObjectsWithEquals</name>
500 <ruleset>Design Rules</ruleset>
503 <name>PositionLiteralsFirstInComparisons</name>
504 <ruleset>Design Rules</ruleset>
507 <name>UnnecessaryLocalBeforeReturn</name>
508 <ruleset>Design Rules</ruleset>
511 <name>NonThreadSafeSingleton</name>
512 <ruleset>Design Rules</ruleset>
515 <name>UncommentedEmptyMethod</name>
516 <ruleset>Design Rules</ruleset>
519 <name>UncommentedEmptyConstructor</name>
520 <ruleset>Design Rules</ruleset>
523 <name>AvoidConstantsInterface</name>
524 <ruleset>Design Rules</ruleset>
527 <name>UnsynchronizedStaticDateFormatter</name>
528 <ruleset>Design Rules</ruleset>
531 <name>PreserveStackTrace</name>
532 <ruleset>Design Rules</ruleset>
535 <name>UseCollectionIsEmpty</name>
536 <ruleset>Design Rules</ruleset>
539 <name>ClassWithOnlyPrivateConstructorsShouldBeFinal</name>
540 <ruleset>Design Rules</ruleset>
543 <name>EmptyMethodInAbstractClassShouldBeAbstract</name>
544 <ruleset>Design Rules</ruleset>
547 <name>SingularField</name>
548 <ruleset>Design Rules</ruleset>
551 <name>ReturnEmptyArrayRatherThanNull</name>
552 <ruleset>Design Rules</ruleset>
555 <name>AbstractClassWithoutAnyMethod</name>
556 <ruleset>Design Rules</ruleset>
559 <name>TooFewBranchesForASwitchStatement</name>
560 <ruleset>Design Rules</ruleset>
563 <name>UseProperClassLoader</name>
564 <ruleset>J2EE Rules</ruleset>
567 <name>MDBAndSessionBeanNamingConvention</name>
568 <ruleset>J2EE Rules</ruleset>
571 <name>RemoteSessionInterfaceNamingConvention</name>
572 <ruleset>J2EE Rules</ruleset>
575 <name>LocalInterfaceSessionNamingConvention</name>
576 <ruleset>J2EE Rules</ruleset>
579 <name>LocalHomeNamingConvention</name>
580 <ruleset>J2EE Rules</ruleset>
583 <name>RemoteInterfaceNamingConvention</name>
584 <ruleset>J2EE Rules</ruleset>
587 <name>DoNotCallSystemExit</name>
588 <ruleset>J2EE Rules</ruleset>
591 <name>StaticEJBFieldShouldBeFinal</name>
592 <ruleset>J2EE Rules</ruleset>
595 <name>DoNotUseThreads</name>
596 <ruleset>J2EE Rules</ruleset>
599 <name>LocalVariableCouldBeFinal</name>
600 <ruleset>Optimization Rules</ruleset>
603 <name>MethodArgumentCouldBeFinal</name>
604 <ruleset>Optimization Rules</ruleset>
607 <name>AvoidInstantiatingObjectsInLoops</name>
608 <ruleset>Optimization Rules</ruleset>
611 <name>UseArrayListInsteadOfVector</name>
612 <ruleset>Optimization Rules</ruleset>
615 <name>SimplifyStartsWith</name>
616 <ruleset>Optimization Rules</ruleset>
619 <name>UseStringBufferForStringAppends</name>
620 <ruleset>Optimization Rules</ruleset>
623 <name>UseArraysAsList</name>
624 <ruleset>Optimization Rules</ruleset>
627 <name>AvoidArrayLoops</name>
628 <ruleset>Optimization Rules</ruleset>
631 <name>UnnecessaryWrapperObjectCreation</name>
632 <ruleset>Optimization Rules</ruleset>
635 <name>AddEmptyString</name>
636 <ruleset>Optimization Rules</ruleset>
639 <name>MethodReturnsInternalArray</name>
640 <ruleset>Security Code Guidelines</ruleset>
643 <name>ArrayIsStoredDirectly</name>
644 <ruleset>Security Code Guidelines</ruleset>
647 <name>CouplingBetweenObjects</name>
648 <ruleset>Coupling Rules</ruleset>
651 <name>ExcessiveImports</name>
652 <ruleset>Coupling Rules</ruleset>
655 <name>LooseCoupling</name>
656 <ruleset>Type Resolution Rules</ruleset>
659 <name>DuplicateImports</name>
660 <ruleset>Import Statement Rules</ruleset>
663 <name>DontImportJavaLang</name>
664 <ruleset>Import Statement Rules</ruleset>
667 <name>UnusedImports</name>
668 <ruleset>Type Resolution Rules</ruleset>
671 <name>ImportFromSamePackage</name>
672 <ruleset>Import Statement Rules</ruleset>
675 <name>TooManyStaticImports</name>
676 <ruleset>Import Statement Rules</ruleset>
679 <name>JUnitStaticSuite</name>
680 <ruleset>JUnit Rules</ruleset>
683 <name>JUnitSpelling</name>
684 <ruleset>JUnit Rules</ruleset>
687 <name>JUnitAssertionsShouldIncludeMessage</name>
688 <ruleset>JUnit Rules</ruleset>
691 <name>JUnitTestsShouldIncludeAssert</name>
692 <ruleset>JUnit Rules</ruleset>
695 <name>TestClassWithoutTestCases</name>
696 <ruleset>JUnit Rules</ruleset>
699 <name>UnnecessaryBooleanAssertion</name>
700 <ruleset>JUnit Rules</ruleset>
703 <name>UseAssertEqualsInsteadOfAssertTrue</name>
704 <ruleset>JUnit Rules</ruleset>
707 <name>UseAssertSameInsteadOfAssertTrue</name>
708 <ruleset>JUnit Rules</ruleset>
711 <name>UseAssertNullInsteadOfAssertTrue</name>
712 <ruleset>JUnit Rules</ruleset>
715 <name>SimplifyBooleanAssertion</name>
716 <ruleset>JUnit Rules</ruleset>
719 <name>ShortVariable</name>
720 <ruleset>Naming Rules</ruleset>
723 <name>LongVariable</name>
724 <ruleset>Naming Rules</ruleset>
727 <name>ShortMethodName</name>
728 <ruleset>Naming Rules</ruleset>
731 <name>VariableNamingConventions</name>
732 <ruleset>Naming Rules</ruleset>
735 <name>MethodNamingConventions</name>
736 <ruleset>Naming Rules</ruleset>
739 <name>ClassNamingConventions</name>
740 <ruleset>Naming Rules</ruleset>
743 <name>AbstractNaming</name>
744 <ruleset>Naming Rules</ruleset>
747 <name>AvoidDollarSigns</name>
748 <ruleset>Naming Rules</ruleset>
751 <name>MethodWithSameNameAsEnclosingClass</name>
752 <ruleset>Naming Rules</ruleset>
755 <name>SuspiciousHashcodeMethodName</name>
756 <ruleset>Naming Rules</ruleset>
759 <name>SuspiciousConstantFieldName</name>
760 <ruleset>Naming Rules</ruleset>
763 <name>SuspiciousEqualsMethodName</name>
764 <ruleset>Naming Rules</ruleset>
767 <name>AvoidFieldNameMatchingTypeName</name>
768 <ruleset>Naming Rules</ruleset>
771 <name>AvoidFieldNameMatchingMethodName</name>
772 <ruleset>Naming Rules</ruleset>
775 <name>NoPackage</name>
776 <ruleset>Naming Rules</ruleset>
779 <name>PackageCase</name>
780 <ruleset>Naming Rules</ruleset>
783 <name>MisleadingVariableName</name>
784 <ruleset>Naming Rules</ruleset>
787 <name>BooleanGetMethodName</name>
788 <ruleset>Naming Rules</ruleset>
791 <name>NPathComplexity</name>
792 <ruleset>Code Size Rules</ruleset>
795 <name>ExcessiveMethodLength</name>
796 <ruleset>Code Size Rules</ruleset>
799 <name>ExcessiveParameterList</name>
800 <ruleset>Code Size Rules</ruleset>
803 <name>ExcessiveClassLength</name>
804 <ruleset>Code Size Rules</ruleset>
807 <name>CyclomaticComplexity</name>
808 <ruleset>Code Size Rules</ruleset>
811 <name>ExcessivePublicCount</name>
812 <ruleset>Code Size Rules</ruleset>
815 <name>TooManyFields</name>
816 <ruleset>Code Size Rules</ruleset>
819 <name>NcssMethodCount</name>
820 <ruleset>Code Size Rules</ruleset>
823 <name>NcssTypeCount</name>
824 <ruleset>Code Size Rules</ruleset>
827 <name>NcssConstructorCount</name>
828 <ruleset>Code Size Rules</ruleset>
831 <name>TooManyMethods</name>
832 <ruleset>Code Size Rules</ruleset>
835 <name>EmptyFinalizer</name>
836 <ruleset>Finalizer Rules</ruleset>
839 <name>FinalizeOnlyCallsSuperFinalize</name>
840 <ruleset>Finalizer Rules</ruleset>
843 <name>FinalizeOverloaded</name>
844 <ruleset>Finalizer Rules</ruleset>
847 <name>FinalizeDoesNotCallSuperFinalize</name>
848 <ruleset>Finalizer Rules</ruleset>
851 <name>FinalizeShouldBeProtected</name>
852 <ruleset>Finalizer Rules</ruleset>
855 <name>AvoidCallingFinalize</name>
856 <ruleset>Finalizer Rules</ruleset>
859 <name>UseCorrectExceptionLogging</name>
860 <ruleset>Jakarta Commons Logging Rules</ruleset>
863 <name>ProperLogger</name>
864 <ruleset>Jakarta Commons Logging Rules</ruleset>
867 <name>BeanMembersShouldSerialize</name>
868 <ruleset>JavaBean Rules</ruleset>
871 <name>MissingSerialVersionUID</name>
872 <ruleset>JavaBean Rules</ruleset>
875 <name>ProperCloneImplementation</name>
876 <ruleset>Clone Implementation Rules</ruleset>
879 <name>CloneThrowsCloneNotSupportedException</name>
880 <ruleset>Clone Implementation Rules</ruleset>
883 <name>CloneMethodMustImplementCloneable</name>
884 <ruleset>Type Resolution Rules</ruleset>
887 <name>AvoidDuplicateLiterals</name>
888 <ruleset>String and StringBuffer Rules</ruleset>
891 <name>StringInstantiation</name>
892 <ruleset>String and StringBuffer Rules</ruleset>
895 <name>StringToString</name>
896 <ruleset>String and StringBuffer Rules</ruleset>
899 <name>InefficientStringBuffering</name>
900 <ruleset>String and StringBuffer Rules</ruleset>
903 <name>UnnecessaryCaseChange</name>
904 <ruleset>String and StringBuffer Rules</ruleset>
907 <name>UseStringBufferLength</name>
908 <ruleset>String and StringBuffer Rules</ruleset>
911 <name>AppendCharacterWithChar</name>
912 <ruleset>String and StringBuffer Rules</ruleset>
915 <name>ConsecutiveLiteralAppends</name>
916 <ruleset>String and StringBuffer Rules</ruleset>
919 <name>UseIndexOfChar</name>
920 <ruleset>String and StringBuffer Rules</ruleset>
923 <name>InefficientEmptyStringCheck</name>
924 <ruleset>String and StringBuffer Rules</ruleset>
927 <name>InsufficientStringBufferDeclaration</name>
928 <ruleset>String and StringBuffer Rules</ruleset>
931 <name>UselessStringValueOf</name>
932 <ruleset>String and StringBuffer Rules</ruleset>
935 <name>StringBufferInstantiationWithChar</name>
936 <ruleset>String and StringBuffer Rules</ruleset>
939 <name>UseEqualsToCompareStrings</name>
940 <ruleset>String and StringBuffer Rules</ruleset>
943 <name>AvoidStringBufferField</name>
944 <ruleset>String and StringBuffer Rules</ruleset>
947 <name>MissingStaticMethodInNonInstantiatableClass</name>
948 <ruleset>pmd-eclipse</ruleset>
951 <name>ExceptionAsFlowControl</name>
952 <ruleset>pmd-eclipse</ruleset>
955 <name>AvoidCatchingThrowable</name>
956 <ruleset>pmd-eclipse</ruleset>
959 <name>SingularField</name>
960 <ruleset>pmd-eclipse</ruleset>
963 <name>AvoidUsingNativeCode</name>
964 <ruleset>pmd-eclipse</ruleset>
967 <name>AvoidCatchingNPE</name>
968 <ruleset>pmd-eclipse</ruleset>
971 <name>AppendCharacterWithChar</name>
972 <ruleset>pmd-eclipse</ruleset>
975 <name>UseStringBufferForStringAppends</name>
976 <ruleset>pmd-eclipse</ruleset>
979 <name>ExcessiveImports</name>
980 <ruleset>pmd-eclipse</ruleset>
983 <name>AccessorClassGeneration</name>
984 <ruleset>pmd-eclipse</ruleset>
987 <name>SuspiciousHashcodeMethodName</name>
988 <ruleset>pmd-eclipse</ruleset>
991 <name>LooseCoupling</name>
992 <ruleset>pmd-eclipse</ruleset>
995 <name>LooseCoupling</name>
996 <ruleset>pmd-eclipse</ruleset>
999 <name>BrokenNullCheck</name>
1000 <ruleset>pmd-eclipse</ruleset>
1003 <name>ClassNamingConventions</name>
1004 <ruleset>pmd-eclipse</ruleset>
1007 <name>CloneMethodMustImplementCloneable</name>
1008 <ruleset>pmd-eclipse</ruleset>
1011 <name>AvoidDollarSigns</name>
1012 <ruleset>pmd-eclipse</ruleset>
1015 <name>DefaultLabelNotLastInSwitchStmt</name>
1016 <ruleset>pmd-eclipse</ruleset>
1019 <name>SignatureDeclareThrowsException</name>
1020 <ruleset>pmd-eclipse</ruleset>
1023 <name>InefficientStringBuffering</name>
1024 <ruleset>pmd-eclipse</ruleset>
1027 <name>AvoidInstantiatingObjectsInLoops</name>
1028 <ruleset>pmd-eclipse</ruleset>
1031 <name>MissingBreakInSwitch</name>
1032 <ruleset>pmd-eclipse</ruleset>
1035 <name>CallSuperInConstructor</name>
1036 <ruleset>pmd-eclipse</ruleset>
1039 <name>StringBufferInstantiationWithChar</name>
1040 <ruleset>pmd-eclipse</ruleset>
1043 <name>BeanMembersShouldSerialize</name>
1044 <ruleset>pmd-eclipse</ruleset>
1047 <name>NcssConstructorCount</name>
1048 <ruleset>pmd-eclipse</ruleset>
1051 <name>AbstractNaming</name>
1052 <ruleset>pmd-eclipse</ruleset>
1055 <name>AssignmentInOperand</name>
1056 <ruleset>pmd-eclipse</ruleset>
1059 <name>ConsecutiveLiteralAppends</name>
1060 <ruleset>pmd-eclipse</ruleset>
1063 <name>IfElseStmtsMustUseBraces</name>
1064 <ruleset>pmd-eclipse</ruleset>
1067 <name>SimpleDateFormatNeedsLocale</name>
1068 <ruleset>pmd-eclipse</ruleset>
1071 <name>AvoidThrowingNullPointerException</name>
1072 <ruleset>pmd-eclipse</ruleset>
1075 <name>JumbledIncrementer</name>
1076 <ruleset>pmd-eclipse</ruleset>
1079 <name>AddEmptyString</name>
1080 <ruleset>pmd-eclipse</ruleset>
1083 <name>TooManyFields</name>
1084 <ruleset>pmd-eclipse</ruleset>
1087 <name>AvoidSynchronizedAtMethodLevel</name>
1088 <ruleset>pmd-eclipse</ruleset>
1091 <name>SuspiciousEqualsMethodName</name>
1092 <ruleset>pmd-eclipse</ruleset>
1095 <name>CloseResource</name>
1096 <ruleset>pmd-eclipse</ruleset>
1099 <name>IdempotentOperations</name>
1100 <ruleset>pmd-eclipse</ruleset>
1103 <name>UselessOperationOnImmutable</name>
1104 <ruleset>pmd-eclipse</ruleset>
1107 <name>AvoidFieldNameMatchingTypeName</name>
1108 <ruleset>pmd-eclipse</ruleset>
1111 <name>AvoidInstanceofChecksInCatchClause</name>
1112 <ruleset>pmd-eclipse</ruleset>
1115 <name>SimplifyBooleanExpressions</name>
1116 <ruleset>pmd-eclipse</ruleset>
1119 <name>UselessOverridingMethod</name>
1120 <ruleset>pmd-eclipse</ruleset>
1123 <name>UseCorrectExceptionLogging</name>
1124 <ruleset>pmd-eclipse</ruleset>
1127 <name>WhileLoopsMustUseBraces</name>
1128 <ruleset>pmd-eclipse</ruleset>
1131 <name>NonThreadSafeSingleton</name>
1132 <ruleset>pmd-eclipse</ruleset>
1135 <name>BooleanInstantiation</name>
1136 <ruleset>pmd-eclipse</ruleset>
1139 <name>UnusedModifier</name>
1140 <ruleset>pmd-eclipse</ruleset>
1143 <name>ClassCastExceptionWithToArray</name>
1144 <ruleset>pmd-eclipse</ruleset>
1147 <name>UnnecessaryParentheses</name>
1148 <ruleset>pmd-eclipse</ruleset>
1151 <name>UseProperClassLoader</name>
1152 <ruleset>pmd-eclipse</ruleset>
1155 <name>ProperCloneImplementation</name>
1156 <ruleset>pmd-eclipse</ruleset>
1159 <name>ReturnFromFinallyBlock</name>
1160 <ruleset>pmd-eclipse</ruleset>
1163 <name>ReturnEmptyArrayRatherThanNull</name>
1164 <ruleset>pmd-eclipse</ruleset>
1167 <name>MisleadingVariableName</name>
1168 <ruleset>pmd-eclipse</ruleset>
1171 <name>ConfusingTernary</name>
1172 <ruleset>pmd-eclipse</ruleset>
1175 <name>SuspiciousConstantFieldName</name>
1176 <ruleset>pmd-eclipse</ruleset>
1179 <name>AvoidDuplicateLiterals</name>
1180 <ruleset>pmd-eclipse</ruleset>
1183 <name>UnusedImports</name>
1184 <ruleset>pmd-eclipse</ruleset>
1187 <name>UncommentedEmptyMethod</name>
1188 <ruleset>pmd-eclipse</ruleset>
1191 <name>UnusedPrivateMethod</name>
1192 <ruleset>pmd-eclipse</ruleset>
1195 <name>NonStaticInitializer</name>
1196 <ruleset>pmd-eclipse</ruleset>
1199 <name>ForLoopShouldBeWhileLoop</name>
1200 <ruleset>pmd-eclipse</ruleset>
1203 <name>AvoidFieldNameMatchingMethodName</name>
1204 <ruleset>pmd-eclipse</ruleset>
1207 <name>AvoidFinalLocalVariable</name>
1208 <ruleset>pmd-eclipse</ruleset>
1211 <name>InstantiationToGetClass</name>
1212 <ruleset>pmd-eclipse</ruleset>
1215 <name>DoNotExtendJavaLangError</name>
1216 <ruleset>pmd-eclipse</ruleset>
1219 <name>UselessStringValueOf</name>
1220 <ruleset>pmd-eclipse</ruleset>
1223 <name>MethodArgumentCouldBeFinal</name>
1224 <ruleset>pmd-eclipse</ruleset>
1227 <name>EqualsNull</name>
1228 <ruleset>pmd-eclipse</ruleset>
1231 <name>ConstructorCallsOverridableMethod</name>
1232 <ruleset>pmd-eclipse</ruleset>
1235 <name>SwitchDensity</name>
1236 <ruleset>pmd-eclipse</ruleset>
1239 <name>TooManyMethods</name>
1240 <ruleset>pmd-eclipse</ruleset>
1243 <name>SimplifyConditional</name>
1244 <ruleset>pmd-eclipse</ruleset>
1247 <name>EmptyCatchBlock</name>
1248 <ruleset>pmd-eclipse</ruleset>
1251 <name>LocalHomeNamingConvention</name>
1252 <ruleset>pmd-eclipse</ruleset>
1255 <name>DoNotUseConditionalExpression </name>
1256 <ruleset>pmd-eclipse</ruleset>
1259 <name>EmptyIfStmt</name>
1260 <ruleset>pmd-eclipse</ruleset>
1263 <name>ImmutableField</name>
1264 <ruleset>pmd-eclipse</ruleset>
1267 <name>DefaultPackage</name>
1268 <ruleset>pmd-eclipse</ruleset>
1271 <name>AvoidArrayLoops</name>
1272 <ruleset>pmd-eclipse</ruleset>
1275 <name>DoNotCallSystemExit</name>
1276 <ruleset>pmd-eclipse</ruleset>
1279 <name>CheckResultSet</name>
1280 <ruleset>pmd-eclipse</ruleset>
1283 <name>CyclomaticComplexity</name>
1284 <ruleset>pmd-eclipse</ruleset>
1287 <name>AvoidUsingShortType</name>
1288 <ruleset>pmd-eclipse</ruleset>
1291 <name>EmptyFinallyBlock</name>
1292 <ruleset>pmd-eclipse</ruleset>
1295 <name>CouplingBetweenObjects</name>
1296 <ruleset>pmd-eclipse</ruleset>
1299 <name>AvoidStringBufferField</name>
1300 <ruleset>pmd-eclipse</ruleset>
1303 <name>SimplifyBooleanReturns</name>
1304 <ruleset>pmd-eclipse</ruleset>
1307 <name>MethodWithSameNameAsEnclosingClass</name>
1308 <ruleset>pmd-eclipse</ruleset>
1311 <name>UnconditionalIfStatement</name>
1312 <ruleset>pmd-eclipse</ruleset>
1315 <name>UnnecessaryFinalModifier</name>
1316 <ruleset>pmd-eclipse</ruleset>
1319 <name>BigIntegerInstantiation</name>
1320 <ruleset>pmd-eclipse</ruleset>
1323 <name>LoggerIsNotStaticFinal</name>
1324 <ruleset>pmd-eclipse</ruleset>
1327 <name>NonCaseLabelInSwitchStatement</name>
1328 <ruleset>pmd-eclipse</ruleset>
1331 <name>InsufficientStringBufferDeclaration</name>
1332 <ruleset>pmd-eclipse</ruleset>
1335 <name>TooManyStaticImports</name>
1336 <ruleset>pmd-eclipse</ruleset>
1339 <name>CompareObjectsWithEquals</name>
1340 <ruleset>pmd-eclipse</ruleset>
1343 <name>ExcessiveParameterList</name>
1344 <ruleset>pmd-eclipse</ruleset>
1347 <name>DuplicateImports</name>
1348 <ruleset>pmd-eclipse</ruleset>
1351 <name>UnnecessaryReturn</name>
1352 <ruleset>pmd-eclipse</ruleset>
1355 <name>EmptySynchronizedBlock</name>
1356 <ruleset>pmd-eclipse</ruleset>
1359 <name>AssignmentToNonFinalStatic</name>
1360 <ruleset>pmd-eclipse</ruleset>
1363 <name>ReplaceVectorWithList</name>
1364 <ruleset>pmd-eclipse</ruleset>
1367 <name>SignatureDeclareThrowsException</name>
1368 <ruleset>pmd-eclipse</ruleset>
1371 <name>UnusedImports</name>
1372 <ruleset>pmd-eclipse</ruleset>
1375 <name>CloneThrowsCloneNotSupportedException</name>
1376 <ruleset>pmd-eclipse</ruleset>
1379 <name>AvoidConstantsInterface</name>
1380 <ruleset>pmd-eclipse</ruleset>
1383 <name>UseArraysAsList</name>
1384 <ruleset>pmd-eclipse</ruleset>
1387 <name>UnsynchronizedStaticDateFormatter</name>
1388 <ruleset>pmd-eclipse</ruleset>
1391 <name>ShortInstantiation</name>
1392 <ruleset>pmd-eclipse</ruleset>
1395 <name>AvoidReassigningParameters</name>
1396 <ruleset>pmd-eclipse</ruleset>
1399 <name>ReplaceHashtableWithMap</name>
1400 <ruleset>pmd-eclipse</ruleset>
1403 <name>UseIndexOfChar</name>
1404 <ruleset>pmd-eclipse</ruleset>
1407 <name>BadComparison</name>
1408 <ruleset>pmd-eclipse</ruleset>
1411 <name>UseNotifyAllInsteadOfNotify</name>
1412 <ruleset>pmd-eclipse</ruleset>
1415 <name>UnnecessaryConversionTemporary</name>
1416 <ruleset>pmd-eclipse</ruleset>
1419 <name>NcssMethodCount</name>
1420 <ruleset>pmd-eclipse</ruleset>
1423 <name>AvoidProtectedFieldInFinalClass</name>
1424 <ruleset>pmd-eclipse</ruleset>
1427 <name>OnlyOneReturn</name>
1428 <ruleset>pmd-eclipse</ruleset>
1431 <name>MisplacedNullCheck</name>
1432 <ruleset>pmd-eclipse</ruleset>
1435 <name>FinalizeOverloaded</name>
1436 <ruleset>pmd-eclipse</ruleset>
1439 <name>UseArrayListInsteadOfVector</name>
1440 <ruleset>pmd-eclipse</ruleset>
1443 <name>UnusedFormalParameter</name>
1444 <ruleset>pmd-eclipse</ruleset>
1447 <name>ParametersNamingRules</name>
1448 <ruleset>pmd-eclipse</ruleset>
1451 <name>ArrayIsStoredDirectly</name>
1452 <ruleset>pmd-eclipse</ruleset>
1455 <name>StringInstantiation</name>
1456 <ruleset>pmd-eclipse</ruleset>
1459 <name>ImportFromSamePackage</name>
1460 <ruleset>pmd-eclipse</ruleset>
1463 <name>PackageCase</name>
1464 <ruleset>pmd-eclipse</ruleset>
1467 <name>StringToString</name>
1468 <ruleset>pmd-eclipse</ruleset>
1471 <name>MissingSerialVersionUID</name>
1472 <ruleset>pmd-eclipse</ruleset>
1475 <name>FinalizeOnlyCallsSuperFinalize</name>
1476 <ruleset>pmd-eclipse</ruleset>
1479 <name>UncommentedEmptyConstructor</name>
1480 <ruleset>pmd-eclipse</ruleset>
1483 <name>AvoidPrintStackTrace</name>
1484 <ruleset>pmd-eclipse</ruleset>
1487 <name>NoPackage</name>
1488 <ruleset>pmd-eclipse</ruleset>
1491 <name>UnusedPrivateField</name>
1492 <ruleset>pmd-eclipse</ruleset>
1495 <name>StaticEJBFieldShouldBeFinal</name>
1496 <ruleset>pmd-eclipse</ruleset>
1499 <name>AvoidUsingOctalValues</name>
1500 <ruleset>pmd-eclipse</ruleset>
1503 <name>UnnecessaryWrapperObjectCreation</name>
1504 <ruleset>pmd-eclipse</ruleset>
1507 <name>BooleanInversion</name>
1508 <ruleset>pmd-eclipse</ruleset>
1511 <name>ClassWithOnlyPrivateConstructorsShouldBeFinal</name>
1512 <ruleset>pmd-eclipse</ruleset>
1515 <name>CloneMethodMustImplementCloneable</name>
1516 <ruleset>pmd-eclipse</ruleset>
1519 <name>PositionLiteralsFirstInComparisons</name>
1520 <ruleset>pmd-eclipse</ruleset>
1523 <name>UnusedNullCheckInEquals</name>
1524 <ruleset>pmd-eclipse</ruleset>
1527 <name>DoNotUseThreads</name>
1528 <ruleset>pmd-eclipse</ruleset>
1531 <name>InefficientEmptyStringCheck</name>
1532 <ruleset>pmd-eclipse</ruleset>
1535 <name>DataflowAnomalyAnalysis</name>
1536 <ruleset>pmd-eclipse</ruleset>
1539 <name>ForLoopsMustUseBraces</name>
1540 <ruleset>pmd-eclipse</ruleset>
1543 <name>FinalizeShouldBeProtected</name>
1544 <ruleset>pmd-eclipse</ruleset>
1547 <name>EmptyTryBlock</name>
1548 <ruleset>pmd-eclipse</ruleset>
1551 <name>UseStringBufferLength</name>
1552 <ruleset>pmd-eclipse</ruleset>
1555 <name>EmptyFinalizer</name>
1556 <ruleset>pmd-eclipse</ruleset>
1559 <name>FieldNamingRules</name>
1560 <ruleset>pmd-eclipse</ruleset>
1563 <name>AvoidUsingHardCodedIP</name>
1564 <ruleset>pmd-eclipse</ruleset>
1567 <name>ByteInstantiation</name>
1568 <ruleset>pmd-eclipse</ruleset>
1571 <name>DontImportSun</name>
1572 <ruleset>pmd-eclipse</ruleset>
1575 <name>MethodNamingConventions</name>
1576 <ruleset>pmd-eclipse</ruleset>
1579 <name>AvoidAccessibilityAlteration</name>
1580 <ruleset>pmd-eclipse</ruleset>
1583 <name>SuspiciousConstantFieldName</name>
1584 <ruleset>pmd-eclipse</ruleset>
1587 <name>SwitchStmtsShouldHaveDefault</name>
1588 <ruleset>pmd-eclipse</ruleset>
1591 <name>ExcessiveMethodLength</name>
1592 <ruleset>pmd-eclipse</ruleset>
1595 <name>OverrideBothEqualsAndHashcode</name>
1596 <ruleset>pmd-eclipse</ruleset>
1599 <name>MethodReturnsInternalArray</name>
1600 <ruleset>pmd-eclipse</ruleset>
1603 <name>TooFewBranchesForASwitchStatement</name>
1604 <ruleset>pmd-eclipse</ruleset>
1607 <name>NcssTypeCount</name>
1608 <ruleset>pmd-eclipse</ruleset>
1611 <name>AvoidDecimalLiteralsInBigDecimalConstructor</name>
1612 <ruleset>pmd-eclipse</ruleset>
1615 <name>DontImportJavaLang</name>
1616 <ruleset>pmd-eclipse</ruleset>
1619 <name>MDBAndSessionBeanNamingConvention</name>
1620 <ruleset>pmd-eclipse</ruleset>
1623 <name>EmptyMethodInAbstractClassShouldBeAbstract</name>
1624 <ruleset>pmd-eclipse</ruleset>
1627 <name>DoNotThrowExceptionInFinally</name>
1628 <ruleset>pmd-eclipse</ruleset>
1631 <name>PreserveStackTrace</name>
1632 <ruleset>pmd-eclipse</ruleset>
1635 <name>ExcessiveClassLength</name>
1636 <ruleset>pmd-eclipse</ruleset>
1639 <name>RemoteInterfaceNamingConvention</name>
1640 <ruleset>pmd-eclipse</ruleset>
1643 <name>EmptyStatementNotInLoop</name>
1644 <ruleset>pmd-eclipse</ruleset>
1647 <name>UseCollectionIsEmpty</name>
1648 <ruleset>pmd-eclipse</ruleset>
1651 <name>UnnecessaryConstructor</name>
1652 <ruleset>pmd-eclipse</ruleset>
1655 <name>BooleanGetMethodName</name>
1656 <ruleset>pmd-eclipse</ruleset>
1659 <name>SystemPrintln</name>
1660 <ruleset>pmd-eclipse</ruleset>
1663 <name>OptimizableToArrayCall</name>
1664 <ruleset>pmd-eclipse</ruleset>
1667 <name>EmptyStaticInitializer</name>
1668 <ruleset>pmd-eclipse</ruleset>
1671 <name>AvoidUsingVolatile</name>
1672 <ruleset>pmd-eclipse</ruleset>
1675 <name>UnnecessaryCaseChange</name>
1676 <ruleset>pmd-eclipse</ruleset>
1679 <name>ReplaceEnumerationWithIterator</name>
1680 <ruleset>pmd-eclipse</ruleset>
1683 <name>FinalFieldCouldBeStatic</name>
1684 <ruleset>pmd-eclipse</ruleset>
1687 <name>IntegerInstantiation</name>
1688 <ruleset>pmd-eclipse</ruleset>
1691 <name>AvoidThrowingRawExceptionTypes</name>
1692 <ruleset>pmd-eclipse</ruleset>
1695 <name>SuspiciousOctalEscape</name>
1696 <ruleset>pmd-eclipse</ruleset>
1699 <name>EmptySwitchStatements</name>
1700 <ruleset>pmd-eclipse</ruleset>
1703 <name>AvoidMultipleUnaryOperators</name>
1704 <ruleset>pmd-eclipse</ruleset>
1707 <name>CollapsibleIfStatements</name>
1708 <ruleset>pmd-eclipse</ruleset>
1711 <name>LocalInterfaceSessionNamingConvention</name>
1712 <ruleset>pmd-eclipse</ruleset>
1715 <name>EmptyWhileStmt</name>
1716 <ruleset>pmd-eclipse</ruleset>
1719 <name>NullAssignment</name>
1720 <ruleset>pmd-eclipse</ruleset>
1723 <name>FinalizeDoesNotCallSuperFinalize</name>
1724 <ruleset>pmd-eclipse</ruleset>
1727 <name>ProperLogger</name>
1728 <ruleset>pmd-eclipse</ruleset>
1731 <name>IfStmtsMustUseBraces</name>
1732 <ruleset>pmd-eclipse</ruleset>
1735 <name>AbstractClassWithoutAnyMethod</name>
1736 <ruleset>pmd-eclipse</ruleset>
1739 <name>MoreThanOneLogger</name>
1740 <ruleset>pmd-eclipse</ruleset>
1743 <name>UnusedLocalVariable</name>
1744 <ruleset>pmd-eclipse</ruleset>
1747 <name>AbstractClassWithoutAbstractMethod</name>
1748 <ruleset>pmd-eclipse</ruleset>
1751 <name>LongInstantiation</name>
1752 <ruleset>pmd-eclipse</ruleset>
1755 <name>VariableNamingConventions</name>
1756 <ruleset>pmd-eclipse</ruleset>
1759 <name>UseSingleton</name>
1760 <ruleset>pmd-eclipse</ruleset>
1763 <name>UseEqualsToCompareStrings</name>
1764 <ruleset>pmd-eclipse</ruleset>
1767 <name>AvoidRethrowingException</name>
1768 <ruleset>pmd-eclipse</ruleset>
1771 <name>SimplifyStartsWith</name>
1772 <ruleset>pmd-eclipse</ruleset>
1775 <name>AvoidDeeplyNestedIfStmts</name>
1776 <ruleset>pmd-eclipse</ruleset>
1779 <name>AvoidCallingFinalize</name>
1780 <ruleset>pmd-eclipse</ruleset>
1783 <name>RemoteSessionInterfaceNamingConvention</name>
1784 <ruleset>pmd-eclipse</ruleset>
1787 <name>AvoidThreadGroup</name>
1788 <ruleset>pmd-eclipse</ruleset>
1791 <name>NPathComplexity</name>
1792 <ruleset>pmd-eclipse</ruleset>
1795 <name>DoubleCheckedLocking</name>
1796 <ruleset>pmd-eclipse</ruleset>
1799 <name>ExcessivePublicCount</name>
1800 <ruleset>pmd-eclipse</ruleset>
1803 <name>DoNotCallGarbageCollectionExplicitly</name>
1804 <ruleset>pmd-eclipse</ruleset>
1807 <includeDerivedFiles>false</includeDerivedFiles>
1808 <violationsAsErrors>true</violationsAsErrors>