PMD Results

The following document contains the results of PMD 4.3.

Files

org/diyefi/openlogviewer/FramesPerSecondPanel.java

ViolationLine
Possible unsafe assignment to a non-final static field in a constructor.56
Possible unsafe assignment to a non-final static field in a constructor.57

org/diyefi/openlogviewer/NavBarPanel.java

ViolationLine
This class has too many methods, consider refactoring it.37 - 418
The class 'NavBarPanel' has a Cyclomatic Complexity of 3 (Highest = 15).37 - 418
The method 'setupNavigationButtons' has a Cyclomatic Complexity of 15.156 - 233

org/diyefi/openlogviewer/OpenLogViewer.java

ViolationLine
A high number of imports can indicate a high degree of coupling within an object.29 - 734
This class has too many methods, consider refactoring it.87 - 734
The class 'OpenLogViewer' has a Cyclomatic Complexity of 4 (Highest = 14).87 - 734
Too many fields87 - 734
The constructor 'OpenLogViewer' has a Cyclomatic Complexity of 13.135 - 287
Local variable 'preliminaryVersion' could be declared final141
The method 'main' has a Cyclomatic Complexity of 13.294 - 351
The method 'run' has a Cyclomatic Complexity of 12.298 - 349
Assigning an Object to null is a code smell. Consider refactoring.399
The method 'generateChooser' has a Cyclomatic Complexity of 10.422 - 473
Avoid throwing raw exception types.491
Avoid throwing raw exception types.513
The method 'openAppWideProps' has a Cyclomatic Complexity of 14.525 - 580
Avoid throwing raw exception types.545
Avoid instantiating new objects inside loops620

org/diyefi/openlogviewer/decoder/CSVTypeLog.java

ViolationLine
Local variable 'finalAndInitialLength' could be declared final90
Avoid instantiating new objects inside loops100

org/diyefi/openlogviewer/decoder/FreeEMSBin.java

ViolationLine
The class 'FreeEMSBin' has a Cyclomatic Complexity of 7 (Highest = 27).42 - 602
Too many fields42 - 602
Do not use the short type51
Do not use the short type52
Do not use the short type53
Do not use the short type54
Do not use the short type55
Do not use the short type56
Perhaps 'labels' could be replaced by a local variable.59
Avoid unused private fields such as 'labels'.59
Do not use the short type61
Perhaps 't' could be replaced by a local variable.63
Do not use the short type229
Avoid really long methods.269 - 388
The method 'run' has a Cyclomatic Complexity of 19.269 - 388
Do not use the short type275
Do not use the short type309
Do not use the short type325
Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block362
The method decodeBasicLogPacket() has an NPath complexity of 9552396 - 519
Avoid really long methods.396 - 519
The method 'decodeBasicLogPacket' has a Cyclomatic Complexity of 27.396 - 519
Do not use the short type396
Do not use the short type410
Do not use the short type413
Do not use the short type415
Do not use the short type547
Do not use the short type549
Do not use the short type554
Do not use the short type554
Do not use the short type567
Do not use the short type567
Do not use the short type575
Do not use the short type585
Do not use the short type586

org/diyefi/openlogviewer/decoder/LogField.java

ViolationLine
The class 'LogField' has a Cyclomatic Complexity of 2 (Highest = 12).3 - 139
Use explicit scoping instead of the default package private level26
Use explicit scoping instead of the default package private level27
Avoid throwing raw exception types.65
Avoid throwing raw exception types.67
Avoid throwing raw exception types.69
Avoid throwing raw exception types.71
The constructor 'LogField' has a Cyclomatic Complexity of 12.75 - 95
The user-supplied array 'bitFieldNames' is stored directly.75
Avoid throwing raw exception types.81
Avoid throwing raw exception types.83
Returning 'bitFieldNames' may expose an internal array.104
The user-supplied array 'bitFieldNames' is stored directly.118

org/diyefi/openlogviewer/genericlog/GenericDataElement.java

ViolationLine
This class has too many methods, consider refactoring it.45 - 288
Assigning an Object to null is a code smell. Consider refactoring.286

org/diyefi/openlogviewer/genericlog/GenericLog.java

ViolationLine
Avoid instantiating new objects inside loops115
Avoid throwing raw exception types.167

org/diyefi/openlogviewer/graphing/EntireGraphingPanel.java

ViolationLine
This class has a bunch of public methods and attributes23 - 907
The class 'EntireGraphingPanel' has a Cyclomatic Complexity of 2 (Highest = 13).47 - 907
Too many fields47 - 907
This class has too many methods, consider refactoring it.51 - 907
Avoid really long methods.794 - 906
The method 'initKeyBindings' has a Cyclomatic Complexity of 13.794 - 906

org/diyefi/openlogviewer/graphing/GraphPositionPanel.java

ViolationLine
The class 'GraphPositionPanel' has a Cyclomatic Complexity of 6 (Highest = 14).38 - 286
The method 'paintPositionBar' has a Cyclomatic Complexity of 12.96 - 142
The method 'paintPositionData' has a Cyclomatic Complexity of 14.144 - 200
These nested if statements could be combined171 - 177
Avoid instantiating new objects inside loops182

org/diyefi/openlogviewer/graphing/InfoPanel.java

ViolationLine
The class 'InfoPanel' has a Cyclomatic Complexity of 3 (Highest = 11).43 - 192
The method 'paintComponent' has a Cyclomatic Complexity of 11.67 - 127
Deeply nested if..then statements are hard to read99 - 101
Deeply nested if..then statements are hard to read108 - 122
Prefer StringBuffer over += for concatenating strings112
Document empty method177 - 178
Document empty method181 - 182
Document empty method185 - 186
Document empty method189 - 191

org/diyefi/openlogviewer/graphing/SingleGraphPanel.java

ViolationLine
This class has too many methods, consider refactoring it.49 - 674
The class 'SingleGraphPanel' has a Cyclomatic Complexity of 5 (Highest = 43).49 - 674
Document empty method84 - 85
The method paintDataPointsAndTraces() has an NPath complexity of 300964116 - 267
Avoid really long methods.116 - 267
The method 'paintDataPointsAndTraces' has a Cyclomatic Complexity of 43.116 - 267
The method paintDataPointsAndTraces() has an NCSS line count of 100116 - 267
These nested if statements could be combined169 - 174
These nested if statements could be combined213 - 216
The method initGraphZoomedOut() has an NPath complexity of 385475 - 639
Avoid really long methods.475 - 639
The method 'initGraphZoomedOut' has a Cyclomatic Complexity of 24.475 - 639

org/diyefi/openlogviewer/optionpanel/OptionFrameV2.java

ViolationLine
A high number of imports can indicate a high degree of coupling within an object.23 - 678
This class has too many methods, consider refactoring it.60 - 678
The class 'OptionFrameV2' has a Cyclomatic Complexity of 4 (Highest = 11).60 - 678
These nested if statements could be combined119 - 123
The method 'remActiveHeaderPanel' has a Cyclomatic Complexity of 11.208 - 255
Avoid instantiating new objects inside loops325
Avoid throwing raw exception types.487
Avoid throwing raw exception types.494
Document empty method528 - 529
Document empty method532 - 533

org/diyefi/openlogviewer/propertypanel/PropertiesPane.java

ViolationLine
A high number of imports can indicate a high degree of coupling within an object.23 - 454
This class has too many methods, consider refactoring it.65 - 454
Avoid throwing raw exception types.127
Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block137
Avoid instantiating new objects inside loops215
Avoid instantiating new objects inside loops218 - 221
Avoid throwing raw exception types.232
Avoid throwing raw exception types.251
Avoid instantiating new objects inside loops327
Document empty method391 - 392
Document empty method395 - 396
Document empty method399 - 400
Document empty method403 - 404

org/diyefi/openlogviewer/subframes/AboutFrame.java

ViolationLine
Assigning an Object to null is a code smell. Consider refactoring.254

org/diyefi/openlogviewer/utils/Utilities.java

ViolationLine
Local variable 'is' could be declared final52
Local variable 'data' could be declared final54
Avoid assignments in operands58