i common-javaInsufficientCommentDensity">Source files should have a sufficient density of comment lines S common-javaDuplicatedBlocks"2Source files should not have any duplicated blocks U common-javaSkippedUnitTests"4Skipped unit tests should be either removed or fixed \ common-javaInsufficientLineCoverage"3Lines should have sufficient coverage by unit tests A common-javaFailedUnitTests"!Failed unit tests should be fixed a common-javaInsufficientBranchCoverage"6Branches should have sufficient coverage by unit tests  squidUselessParenthesesCheckUselessParenthesesCheck"XUseless parentheses around expressions should be removed to prevent any misunderstanding Z squidS2134S2134"CClasses extending java.lang.Thread should override the "run" method ; squidS138S138"&Methods should not have too many lines G squidS2133S2133"0Objects should not be created only to "getClass" M squidS1294S1294"6The Array.equals(Object obj) method should not be used R squidS2131S2131";Primitives should not be boxed just for "String" conversion ` squidS135S135"KLoops should not contain more than a single "break" or "continue" statement < squidS1150S1150"%Enumeration should not be implemented K squidS1151S1151"4"switch case" clauses should not have too many lines M squidS1939S1939"6Extensions and implementations should not be redundant E squidS2039S2039".Member variable visibility should be specified L squidNoSonarNoSonar"1"NOSONAR" should not be used to switch off issues > squidS2232S2232"'"ResultSet.isLast()" should not be used f squidS1943S1943"OClasses and methods that rely on the default system encoding should not be used m squidS1158S1158"VPrimitive wrappers should not be instantiated only for "toString" or "compareTo" calls H squidS2230S2230"1Non-public methods should not be "@Transactional" t squidS1157S1157"]Case insensitive string comparisons should be made without intermediate upper or lower casing P squidS1155S1155"9Collection.isEmpty() should be used to test for emptiness s squidS2236S2236"\Methods "wait(...)", "notify()" and "notifyAll()" should never be called on Thread instances b squidS1948S1948"KFields in a "Serializable" class should either be transient or serializable J squidS1153S1153"3String.valueOf() should not be appended to a String H squidS2235S2235"1IllegalMonitorStateException should not be caught b squidS1764S1764"KIdentical expressions should not be used on both sides of a binary operator P squidS2130S2130"9Parsing should be used to convert "Strings" to primitives s squidUndocumentedApiUndocumentedApi"HPublic types, methods and fields (API) should be documented with Javadoc = squidS2333S2333"&Redundant modifiers should not be used o squidTrailingCommentCheckTrailingCommentCheck":Comments should not be located at the end of lines of code m squidMaximumInheritanceDepthMaximumInheritanceDepth"2Inheritance tree of classes should not be too deep < squidS1940S1940"%Boolean checks should not be inverted L squidS1699S1699"5Constructors should only call non-overridable methods T squidS128S128"?Switch cases should end with an unconditional "break" statement M squidS2127S2127"6"Double.longBitsToDouble" should not be used for "int" X squidCallToDeprecatedMethodCallToDeprecatedMethod"Avoid use of deprecated methods ] squidS888S888"HRelational operators should be used in "for" loop termination conditions A squidS2123S2123"*Values should not be uselessly incremented S squidS2122S2122"<"ScheduledThreadPoolExecutor" should not have 0 core threads P squidS1160S1160"9Public methods should throw at most one checked exception  squidS1161S1161"x"@Override" annotation should be used on any method overriding (since Java 5) or implementing (since Java 6) another one W squidS1694S1694"@An abstract class should have both abstract and concrete methods = squidS1162S1162"&Checked Exception should not be thrown K squidS00101S00101"2Class names should comply with a naming convention M squidS1695S1695"6"NullPointerException" should not be explicitly thrown L squidS00100S00100"3Method names should comply with a naming convention B squidS1696S1696"+"NullPointerException" should not be caught n squidS1697S1697"WShort-circuit logic should be used to prevent null pointer dereferences in conditionals A squidS1698S1698"*Objects should be compared with "equals()" V squidS1168S1168"?Empty arrays and collections should be returned instead of null r squidStringEqualityComparisonCheckStringEqualityComparisonCheck"+Strings should be compared using "equals()" / squidS2222S2222"Locks should be released [ squidHiddenFieldCheckHiddenFieldCheck".Local variables should not shadow class fields ? squidS2326S2326"(Unused type parameters should be removed H squidS1163S1163"1Exceptions should not be thrown in finally blocks P squidS2225S2225"9"toString()" and "clone()" methods should not return null P squidS1166S1166"9Exception handlers should preserve the original exception < squidS1165S1165"%Exception classes should be immutable I squidS2226S2226"2Servlets should never have mutable instance fields S squidArchitecturalConstraintArchitecturalConstraint"Architectural constraint u squidS134S134"`Control flow statements "if", "for", "while", "switch" and "try" should not be nested too deeply [ squidS2325S2325"D"private" methods that don't access instance data should be "static" J squidS2156S2156"3"final" classes should not have "protected" members z squidS2154S2154"cDissimilar primitive wrappers should not be used with the ternary operator without explicit casting M squidS2153S2153"6Boxing and unboxing should not be immediately reversed ? squidS2159S2159"(Silly equality checks should not be made < squidS2157S2157"%"Cloneables" should implement "clone" A squidS1172S1172"*Unused method parameters should be removed R squidS1479S1479";"switch" statements should not have too many "case" clauses  squidS1170S1170"jPublic constants and fields initialized at declaration should be "static final" rather than merely "final" D squidS1171S1171"-Only static class initializers should be used ] squidS1175S1175"FThe signature of "finalize()" should match that of "Object.finalize()" b squidS1174S1174"K"Object.finalize()" should remain protected (versus public) when overriding A squidS2151S2151"*"runFinalizersOnExit" should not be called f squidCallToFileDeleteOnExitMethodCallToFileDeleteOnExitMethod"!"deleteOnExit" should not be used Z squidLabelsShouldNotBeUsedCheckLabelsShouldNotBeUsedCheck"Labels should not be used e squidS1488S1488"NLocal Variables should not be declared and then immediately returned or thrown Z squidS3008S3008"CStatic non-final field names should comply with a naming convention { squidSwitchLastCaseIsDefaultCheckSwitchLastCaseIsDefaultCheck"6"switch" statements should end with a "default" clause  squid,RightCurlyBraceDifferentLineAsNextBlockCheck,RightCurlyBraceDifferentLineAsNextBlockCheck"fClose curly brace and the next "else", "catch" and "finally" keywords should be on two different lines d squidModifiersOrderCheckModifiersOrderCheck"1Modifiers should be declared in the correct order ? squidS1181S1181"(Throwable and Error should not be caught 9 squidS1905S1905""Redundant casts should not be used c squidS1182S1182"LClasses that override "clone" should be "Cloneable" and call "super.clone()" j squidS2201S2201"SReturn values should not be ignored when function calls don't have any side effects 2 squidS1186S1186"Methods should not be empty = squidS1872S1872"&Classes should not be compared by name R squidS2438S2438";"Threads" should not be used where "Runnables" are expected u squidS1871S1871"^Two branches in the same conditional structure should not have exactly the same implementation l squidS1185S1185"UOverriding methods should do more than simply call the same method in the super class S squidS1188S1188" squidS1774S1774"'The ternary operator should not be used V squidS2272S2272"?"Iterator.next()" methods should throw "NoSuchElementException"  squidS2273S2273"r"wait(...)", "notify()" and "notifyAll()" methods should only be called when a lock is obviously held on an object a squidLowerCaseLongSuffixCheckLowerCaseLongSuffixCheck"$Long suffix "L" should be upper case C squidS2786S2786",Nested "enum"s should not be declared static J squidS1118S1118"3Utility classes should not have public constructors z squidS2277S2277"cCryptographic RSA algorithms should always incorporate OAEP (Optimal Asymmetric Encryption Padding) a squidUnusedProtectedMethodUnusedProtectedMethod"*Unused protected methods should be removed d squidS2276S2276"M"wait(...)" should be used instead of "Thread.sleep(...)" when a lock is held d squidS2275S2275"MPrintf-style format strings should not lead to unexpected behavior at runtime k squidS2274S2274"T"Object.wait(...)" and "Condition.await(...)" should be called inside a "while" loop c squidCommentedOutCodeLineCommentedOutCodeLine".Sections of code should not be "commented out" ^ squidS2278S2278"GNeither DES (Data Encryption Standard) nor DESede (3DES) should be used C squidS2912S2912","indexOf" checks should use a start position < squidS1656S1656"%Variables should not be self-assigned Q squidS1659S1659":Multiple variables should not be declared on the same line L squidS1264S1264"5A "while" loop should be used instead of a "for" loop Y squidS1125S1125"BLiteral boolean values should not be used in condition expressions k squidS1126S1126"TReturn of boolean expressions should not be wrapped into an "if-then-else" statement  squidClassVariableVisibilityCheckClassVariableVisibilityCheck":Class variable fields should not have public accessibility H squidS2250S2250"1"ConcurrentLinkedQueue.size()" should not be used M squidS1643S1643"6Strings should not be concatenated using '+' in a loop ` squidS2251S2251"IA "for" loop update clause should move the counter in the right direction Z squidS1640S1640"CMaps with keys that are enum values should be replaced with EnumMap E squidS2118S2118".Non-serializable classes should not be written B squidS00112S00112")Generic exceptions should never be thrown > squidS2111S2111"'"BigDecimal(double)" should not be used H squidS2112S2112"1"URL.hashCode" and "URL.equals" should be avoided ? squidS2110S2110"(Invalid "Date" values should not be used X squidS2116S2116"A"hashCode" and "toString" should not be called on array instances J squidS2391S2391"3JUnit framework methods should be declared properly Y squidS2114S2114"BCollections should not be passed as arguments to their own methods ? squidS2259S2259"(Null pointers should not be dereferenced d squidS1132S1132"MStrings literals should be placed on the left side when checking for equality D squidS00107S00107"+Methods should not have too many parameters c squidS2258S2258"L"javax.crypto.NullCipher" should not be used for anything other than testing C squidS1133S1133",Deprecated code should be removed eventually L squidS2257S2257"5Only standard cryptographic algorithms should be used G squidS00108S00108".Nested blocks of code should not be left empty 5 squidS00103S00103"Lines should not be too long V squidS2254S2254"?"HttpServletRequest.getRequestedSessionId()" should not be used < squidS2253S2253"%Disallowed methods should not be used 5 squidS1134S1134""FIXME" tags should be handled A squidS00105S00105"(Tabulation characters should not be used C squidS2252S2252",Loop conditions should be true at least once 4 squidS1135S1135""TODO" tags should be handled = squidS00104S00104"$Files should not have too many lines ? squidS00122S00122"&Statements should be on separate lines M squidS00120S00120"4Package names should comply with a naming convention U squidS2109S2109">Reflection should not be used to check non-runtime annotations J squidS00121S00121"1Control structures should always use curly braces j squidS2676S2676"SNeither "Math.abs" nor negation should be used on numbers that could be "MIN_VALUE" I squidS2677S2677"2"read" and "readLine" return values should be used N squidS2674S2674"7The value returned from a stream read should be checked @ squidS2675S2675")"readObject" should not be "synchronized" V squidCycleBetweenPackagesCycleBetweenPackages"!Avoid cycle between java packages h squidS1149S1149"QSynchronized classes Vector, Hashtable, Stack and StringBuffer should not be used O squidS1244S1244"8Floating point numbers should not be tested for equality P squidS2384S2384"9Mutable members should not be stored or returned directly { squidLeftCurlyBraceEndLineCheckLeftCurlyBraceEndLineCheck":An open curly brace should be located at the end of a line Q squidS2387S2387":Child class members should not shadow parent class members P squidS2386S2386"9Interfaces should not have "public static" mutable fields U squidS2388S2388">Inner class calls to super class methods should be unambiguous < squidS1141S1141"%Try-catch blocks should not be nested L squidS1142S1142"5Methods should not contain too many return statements T squidS00119S00119";Type parameter names should comply with a naming convention c squidS2245S2245"LPseudorandom number generators (PRNGs) should not be used in secure contexts O squidS1143S1143"8"return" statements should not occur in "finally" blocks T squidS00118S00118";Abstract class names should comply with a naming convention i squidS00117S00117"PLocal variable and method parameter names should comply with a naming convention ] squidS1145S1145"FUseless "if(true) {...}" and "if(false){...}" blocks should be removed K squidS00116S00116"2Field names should comply with a naming convention N squidS00115S00115"5Constant names should comply with a naming convention  squidLeftCurlyBraceStartLineCheckLeftCurlyBraceStartLineCheck"@An open curly brace should be located at the beginning of a line 8 squidS1147S1147"!Exit methods should not be called O squidS00114S00114"6Interface names should comply with a naming convention J squidS1148S1148"3Throwable.printStackTrace(...) should not be called J squidS00113S00113"1Files should contain an empty new line at the end ] squidS1215S1215"FExecution of the Garbage Collector should be triggered only by the JVM T squidS1217S1217"=Thread.run() and Runnable.run() should not be called directly A squidS2188S2188"*JUnit test cases should call super methods M squidS1219S1219"6"switch" statements should not contain non-case labels K squidS2186S2186"4JUnit assertions should not be used in "run" methods 5 squidS2187S2187"TestCases should contain tests i squidS1210S1210"R"equals(Object obj)" should be overridden along with the "compareTo(T obj)" method D squidS1214S1214"-Constants should not be defined in interfaces o squidS1609S1609"X@FunctionalInterface annotation should be used to flag Single Abstract Method interfaces l squidS1213S1213"UThe members of an interface declaration or class should appear in a pre-defined order d squidObjectFinalizeCheckObjectFinalizeCheck"1The Object.finalize() method should not be called < squidS2089S2089"%HTTP referers should not be relied on s squidS1611S1611"\Parentheses should be removed from a single lambda input parameter when its type is inferred J squidS2681S2681"3Multiline blocks should be enclosed in curly braces K squidS1612S1612"4Replace lambdas with method references when possible 9 squidS2185S2185""Silly math should not be performed E squidS2184S2184".Math operands should be cast before assignment X squidS1610S1610"AAbstract classes without fields should be converted to interfaces _ squidS2183S2183"HInts and longs should not be shifted by more than their number of bits-1 8 squid EmptyFile EmptyFile"Files should not be empty N squidS1228S1228"7Packages should have a javadoc file 'package-info.java' Z squidUnusedPrivateMethodUnusedPrivateMethod"'Unused private method should be removed j squidS1226S1226"SMethod parameters, caught exceptions and foreach variables should not be reassigned P squidS2197S2197"9Modulus results should not be checked for direct equality  squidAssignmentInSubExpressionCheckAssignmentInSubExpressionCheck":Assignments should not be made from within sub-expressions H squidS1221S1221"1Methods should not be named "hashcode" or "equal" E squidS1220S1220".The default unnamed package should not be used 1 squidS2092S2092"Cookies should be "secure" 2 squidS2094S2094"Classes should not be empty 1 squidS2095S2095"Resources should be closed 9 squidS2096S2096"""main" should not "throw" anything c squidS1223S1223"LNon-constructor methods should not have the same name as the enclosing class E squidS2097S2097"."equals(Object obj)" should test argument type K squidS2696S2696"4Instance methods should not write to "static" fields 6 squidS2699S2699"Tests should include assertions ? squidS2698S2698"(JUnit assertions should include messages D squidS2693S2693"-Threads should not be started in constructors J squidS2692S2692"3"indexOf" checks should not be for positive numbers f squidS2695S2695"O"PreparedStatement" and "ResultSet" methods should be called with valid indices c squidS2694S2694"LInner classes which do not reference their owning classes should be "static" I squidS2885S2885"2"Calendars" and "DateFormats" should not be static ] squidS2166S2166"FClasses named like "Exception" should extend "Exception" or a subclass H squidS2167S2167"1"compareTo" should not return "Integer.MIN_VALUE" = squidS2164S2164"&Math should not be performed on floats A squidS2165S2165"*"finalize" should not set fields to "null" s squidS1994S1994"\"for" loop incrementers should modify the variable being tested in the loop's stop condition x squidRedundantThrowsDeclarationCheckRedundantThrowsDeclarationCheck"-Throws declarations should not be superfluous S squidS2162S2162"<"equals" methods should be symmetric and work for subclasses J squidS2160S2160"3Subclasses that add fields should override "equals" J squidS2175S2175"3Inappropriate "Collection" calls should not be made o squidForLoopCounterChangedCheckForLoopCounterChangedCheck"."for" loop stop conditions should be invariant O squidS2176S2176"8Class names should not shadow interfaces or superclasses M squidS2178S2178"6Short-circuit logic should be used in boolean contexts T squidS1700S1700"=A field should not duplicate the name of its containing class Z squidS1206S1206"C"equals(Object obj)" and "hashCode()" should be overridden in pairs K squidS1701S1701"4Fields and methods should not have conflicting names S squidS1201S1201"Generic wildcard types should not be used in return parameters F squidS1451S1451"/Copyright and license headers should be defined X squidIndentationCheckIndentationCheck"+Source code should be indented consistently _ squidS2718S2718"H"DateUtils.truncate" from Apache Commons Lang library should not be used O squidS1315S1315"8"CHECKSTYLE:OFF" suppression comments should not be used 6 squidS1314S1314"Octal values should not be used e squidS1317S1317"N"StringBuilder" and "StringBuffer" should not be instantiated with a character Y squidS1860S1860"BSynchronization should not be based on Strings or boxed primitives Y squidS1862S1862"BRelated "if/else if" statements should not have the same condition [ squidS1724S1724"DDeprecated classes and interfaces should not be extended/implemented z squidS881S881"eIncrement (++) and decrement (--) operators should not be mixed with other operators in an expression 8 squid ParsingError ParsingError"Java parser failure M squidS1598S1598"6Package declaration should match source file directory u squidS2055S2055"^The non-serializable super class of a "Serializable" class must have a no-argument constructor  squidS1596S1596"|Collections.emptyList(), emptyMap() and emptySet() should be used instead of Collections.EMPTY_LIST, EMPTY_MAP and EMPTY_SET F squidS2057S2057"/"Serializable" classes should have a version id ^ squidS2059S2059"G"Serializable" inner classes of "Serializable" classes should be static N squidS2701S2701"7Literal boolean values should not be used in assertions ; squidS2063S2063"$Comparators should be "Serializable"  squid'RightCurlyBraceSameLineAsNextBlockCheck'RightCurlyBraceSameLineAsNextBlockCheck"hClose curly brace and the next "else", "catch" and "finally" keywords should be located on the same line V squidS2061S2061"?Custom serialization method signatures should meet requirements C squidS1066S1066",Collapsible "if" statements should be merged < squidS1067S1067"%Expressions should not be too complex _ squidEmptyStatementUsageCheckEmptyStatementUsageCheck""Empty statements should be removed b squidMethodCyclomaticComplexityMethodCyclomaticComplexity"!Methods should not be too complex 6 squidS1065S1065"Unused labels should be removed > squidS1068S1068"'Unused private fields should be removed U squidS2976S2976">"File.createTempFile" should not be used to create a directory N squidS2974S2974"7Classes without "public" constructors should be "final" ; squidS2068S2068"$Credentials should not be hard-coded 4 squidS2970S2970"Assertions should be complete S squidS2065S2065"Array designators "[]" should be on the type, not the variable  squidS1844S1844"j"Object.wait(...)" should never be called on objects that implement "java.util.concurrent.locks.Condition" < squidS1199S1199"%Nested code blocks should not be used a squidS1848S1848"JObjects should not be created to be dropped immediately without being used K squidS2301S2301"4Public methods should not contain selector arguments M squidS1849S1849"6"Iterator.hasNext()" should not call "Iterator.next()" R squidS2070S2070";SHA-1 and Message-Digest hash algorithms should not be used  squidRightCurlyBraceStartLineCheckRightCurlyBraceStartLineCheck"@A close curly brace should be located at the beginning of a line ] squidS2864S2864"F"entrySet()" should be iterated when both the key and value are needed  squidS1444S1444": G squidS1191S1191"0Classes from "sun.*" packages should not be used B squidS1190S1190"+Future keywords should not be used as names ^ squidS1193S1193"GException types should not be tested using "instanceof" in catch blocks G squidS2076S2076"0Values passed to OS commands should be sanitized H squidS2077S2077"1Values passed to SQL commands should be sanitized 5 squidS109S109" Magic numbers should not be used ? squidS1192S1192"(String literals should not be duplicated P squidS106S106";Standard ouputs should not be used directly to log anything c squidS1195S1195"LArray designators "[]" should be located after the type in method signatures H squidS2078S2078"1Values passed to LDAP queries should be sanitized  squid.ObjectFinalizeOverridenCallsSuperFinalizeCheck.ObjectFinalizeOverridenCallsSuperFinalizeCheck"Qsuper.finalize() should be called at the end of Object.finalize() implementations ? squidS1194S1194"("java.lang.Error" should not be extended