The following document contains the results of PMD 5.2.3.
| Violation | Line |
|---|---|
| This class has too many methods, consider refactoring it. | 31–390 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 72 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 73 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 74 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 75 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 76 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 77 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 78 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 79 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 80 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 81 |
| StringBuffer constructor is initialized with size 16, but has at least 139 characters appended. | 265 |
| Avoid appending characters as strings in StringBuffer.append. | 280 |
| Violation | Line |
|---|---|
| All methods are static. Consider using a utility class instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning. | 26–154 |
| Use block level rather than method level synchronization | 52–63 |
| Use block level rather than method level synchronization | 100–115 |
| Avoid unnecessary if..then..else statements when returning booleans | 109–113 |
| Use block level rather than method level synchronization | 122–136 |
| Use block level rather than method level synchronization | 141–152 |
| Violation | Line |
|---|---|
| This class has too many methods, consider refactoring it. | 37–192 |
| Violation | Line |
|---|---|
| This class has too many methods, consider refactoring it. | 24–212 |
| Use block level rather than method level synchronization | 44–46 |
| Use block level rather than method level synchronization | 49–51 |
| Use block level rather than method level synchronization | 54–56 |
| Use block level rather than method level synchronization | 68–70 |
| Use block level rather than method level synchronization | 73–75 |
| Use block level rather than method level synchronization | 137–153 |
| Use block level rather than method level synchronization | 183–188 |
| Use block level rather than method level synchronization | 191–199 |
| StringBuffer constructor is initialized with size 16, but has at least 32 characters appended. | 203 |
| Avoid appending characters as strings in StringBuffer.append. | 208 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 98–107 |
| StringBuffer constructor is initialized with size 16, but has at least 48 characters appended. | 164 |
| Avoid appending characters as strings in StringBuffer.append. | 169 |
| Violation | Line |
|---|---|
| Possible God class (WMC=54, ATFD=10, TCC=0.0) | 1–354 |
| This class has too many methods, consider refactoring it. | 39–354 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 93–95 |
| Use block level rather than method level synchronization | 138–140 |
| Use block level rather than method level synchronization | 143–145 |
| Use block level rather than method level synchronization | 228–247 |
| Use block level rather than method level synchronization | 250–263 |
| Use block level rather than method level synchronization | 277–290 |
| Avoid if (x != y) ..; else ..; | 278–282 |
| Use block level rather than method level synchronization | 308–321 |
| Use block level rather than method level synchronization | 324–326 |
| Use block level rather than method level synchronization | 329–331 |
| StringBuffer constructor is initialized with size 16, but has at least 48 characters appended. | 345 |
| Avoid appending characters as strings in StringBuffer.append. | 350 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 91–98 |
| Avoid if (x != y) ..; else ..; | 137–146 |
| StringBuffer constructor is initialized with size 16, but has at least 67 characters appended. | 166 |
| StringBuffer (or StringBuilder).append is called 2 consecutive times with literal Strings. Use a single append with a single combined String. | 167 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 167 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 168 |
| StringBuffer (or StringBuilder).append is called 2 consecutive times with literal Strings. Use a single append with a single combined String. | 168 |
| Avoid appending characters as strings in StringBuffer.append. | 169 |
| Violation | Line |
|---|---|
| StringBuffer constructor is initialized with size 16, but has at least 27 characters appended. | 246 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 247 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 248 |
| Avoid appending characters as strings in StringBuffer.append. | 249 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 249 |
| StringBuffer (or StringBuilder).append is called 2 consecutive times with literal Strings. Use a single append with a single combined String. | 249 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 250 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 251 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 252 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 253 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 254 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 255 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 256 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 257 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 258 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 259 |
| Avoid appending characters as strings in StringBuffer.append. | 260 |
| Violation | Line |
|---|---|
| The class 'DefaultMessageConsumer' has a Cyclomatic Complexity of 3 (Highest = 10). | 9–90 |
| The class 'DefaultMessageConsumer' has a Standard Cyclomatic Complexity of 3 (Highest = 10). | 9–90 |
| The class 'DefaultMessageConsumer' has a Modified Cyclomatic Complexity of 3 (Highest = 10). | 9–90 |
| The method 'equals' has a Standard Cyclomatic Complexity of 10. | 24–50 |
| The method 'equals' has a Modified Cyclomatic Complexity of 10. | 24–50 |
| The method 'equals' has a Cyclomatic Complexity of 10. | 24–50 |
| StringBuffer constructor is initialized with size 16, but has at least 27 characters appended. | 78 |
| Avoid appending characters as strings in StringBuffer.append. | 86 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 54–59 |
| Use block level rather than method level synchronization | 62–70 |
| Avoid if (x != y) ..; else ..; | 65–69 |
| Use block level rather than method level synchronization | 78–83 |
| Use block level rather than method level synchronization | 86–94 |
| Avoid if (x != y) ..; else ..; | 89–93 |
| Use block level rather than method level synchronization | 102–113 |
| StringBuffer constructor is initialized with size 16, but has at least 59 characters appended. | 126 |
| Avoid appending characters as strings in StringBuffer.append. | 135 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 47–58 |
| Use block level rather than method level synchronization | 60–72 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 88–109 |
| Use block level rather than method level synchronization | 88–109 |
| Use block level rather than method level synchronization | 122–130 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 142–163 |
| Use block level rather than method level synchronization | 142–163 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 177–179 |
| Use block level rather than method level synchronization | 189–197 |
| Use block level rather than method level synchronization | 207–209 |
| Use block level rather than method level synchronization | 221–223 |
| Use block level rather than method level synchronization | 228–234 |
| Use block level rather than method level synchronization | 236–249 |
| Violation | Line |
|---|---|
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 67–80 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 82–87 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 89–129 |
| Avoid protected methods in a final class that doesnt extend anything other than Object. Change to private or package access. | 178–190 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 46–49 |
| Use block level rather than method level synchronization | 66–76 |
| Use block level rather than method level synchronization | 82–89 |
| Use block level rather than method level synchronization | 91–100 |
| Use block level rather than method level synchronization | 115–117 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 65–75 |
| Use block level rather than method level synchronization | 98–123 |
| Use block level rather than method level synchronization | 144–150 |
| Use block level rather than method level synchronization | 172–190 |
| Use block level rather than method level synchronization | 197–199 |
| Use block level rather than method level synchronization | 217–219 |
| Use block level rather than method level synchronization | 230–232 |
| Violation | Line |
|---|---|
| Avoid using redundant field initializer for 'stash' | 45 |
| Avoid if (x != y) ..; else ..; | 103–108 |
| A method/constructor shouldnt explicitly throw java.lang.Exception | 116 |
| A method/constructor shouldnt explicitly throw java.lang.Exception | 116 |
| Violation | Line |
|---|---|
| Use block level rather than method level synchronization | 47–56 |
| Use block level rather than method level synchronization | 66–68 |
| Use block level rather than method level synchronization | 78–87 |
| Use block level rather than method level synchronization | 109–116 |
| Violation | Line |
|---|---|
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 24 |
| Avoid appending characters as strings in StringBuffer.append. | 24 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 25 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 26 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 27 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 28 |
| Avoid appending characters as strings in StringBuffer.append. | 28 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 29 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 30 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 31 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 32 |
| StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. | 33 |
| Avoid appending characters as strings in StringBuffer.append. | 34 |
| Violation | Line |
|---|---|
| Position literals first in String comparisons | 60 |
| Position literals first in String comparisons | 60 |
| Position literals first in String comparisons | 72 |
| Position literals first in String comparisons | 74 |
| Position literals first in String comparisons | 76 |
| Position literals first in String comparisons | 78 |
| Position literals first in String comparisons | 80 |
| Position literals first in String comparisons | 96 |
| Position literals first in String comparisons | 98 |
| Violation | Line |
|---|---|
| The class 'DefaultExceptionDescriptor' has a Standard Cyclomatic Complexity of 3 (Highest = 14). | 17–201 |
| The class 'DefaultExceptionDescriptor' has a Cyclomatic Complexity of 3 (Highest = 14). | 17–201 |
| The class 'DefaultExceptionDescriptor' has a Modified Cyclomatic Complexity of 3 (Highest = 14). | 17–201 |
| Avoid empty if statements | 37–39 |
| Avoid empty if statements | 37–39 |
| Avoid instantiation through private constructors from outside of the constructors class. | 48–49 |
| Avoid instantiating new objects inside loops | 48–49 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 82 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 84 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 85 |
| The method 'equals' has a Modified Cyclomatic Complexity of 14. | 96–132 |
| The method equals() has an NPath complexity of 1024 | 96–132 |
| The method 'equals' has a Cyclomatic Complexity of 14. | 96–132 |
| The method 'equals' has a Standard Cyclomatic Complexity of 14. | 96–132 |
| StringBuffer constructor is initialized with size 16, but has at least 28 characters appended. | 183 |
| Avoid appending characters as strings in StringBuffer.append. | 197 |
| Violation | Line |
|---|---|
| Switch statements should have a default label | 39–51 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 137 |
| Use block level rather than method level synchronization | 150–171 |
| Violation | Line |
|---|---|
| StringBuffer constructor is initialized with size 16, but has at least 36 characters appended. | 17 |
| Avoid appending characters as strings in StringBuffer.append. | 18 |
| Violation | Line |
|---|---|
| Avoid if (x != y) ..; else ..; | 10–19 |
| Avoid if (x != y) ..; else ..; | 12–16 |
| Violation | Line |
|---|---|
| The class 'StackTraceLine' has a Cyclomatic Complexity of 2 (Highest = 13). | 3–111 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 24 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 26 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 28 |
| The constructor 'StackTraceLine' has a Cyclomatic Complexity of 13. | 39–61 |
| Avoid if (x != y) ..; else ..; | 45–49 |
| Avoid if (x != y) ..; else ..; | 50–56 |
| StringBuffer constructor is initialized with size 16, but has at least 38 characters appended. | 89 |
| Avoid appending characters as strings in StringBuffer.append. | 107 |
| Violation | Line |
|---|---|
| The class 'StackTraceParser' has a Cyclomatic Complexity of 13 (Highest = 12). | 5–49 |
| The class 'StackTraceParser' has a Standard Cyclomatic Complexity of 11 (Highest = 10). | 5–49 |
| The class 'StackTraceParser' has a Modified Cyclomatic Complexity of 11 (Highest = 10). | 5–49 |
| The method 'parse' has a Standard Cyclomatic Complexity of 10. | 8–47 |
| The method 'parse' has a Modified Cyclomatic Complexity of 10. | 8–47 |
| The method 'parse' has a Cyclomatic Complexity of 12. | 8–47 |
| The method parse() has an NPath complexity of 300 | 8–47 |
| Avoid declaring a variable if it is unreferenced before a possible exit point. | 14 |
| Avoid declaring a variable if it is unreferenced before a possible exit point. | 15 |
| Position literals first in String comparisons | 22 |
| Position literals first in String comparisons | 28 |
| Violation | Line |
|---|---|
| All methods are static. Consider using a utility class instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning. | 10–51 |
| Switch statements should have a default label | 33–49 |
| Violation | Line |
|---|---|
| Avoid using java.lang.ThreadGroup; it is not thread safe | 16 |
| Violation | Line |
|---|---|
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 301 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 303 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 308 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 310 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 312 |
| Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. | 314 |
| Violation | Line |
|---|---|
| The class 'TailerRun' has a Cyclomatic Complexity of 4 (Highest = 11). | 17–221 |
| The class 'TailerRun' has a Standard Cyclomatic Complexity of 4 (Highest = 11). | 17–221 |
| The class 'TailerRun' has a Modified Cyclomatic Complexity of 4 (Highest = 11). | 17–221 |
| Avoid using redundant field initializer for 'last' | 44 |
| Avoid using redundant field initializer for 'position' | 54 |
| Avoid using redundant field initializer for 'reader' | 55 |
| A switch statement does not contain a break | 107–128 |
| Avoid instantiating new objects inside loops | 110 |
| Avoid instantiating new objects inside loops | 123 |
| The method 'run' has a Standard Cyclomatic Complexity of 11. | 138–219 |
| The method 'run' has a Modified Cyclomatic Complexity of 11. | 138–219 |
| The method 'run' has a Cyclomatic Complexity of 11. | 138–219 |