PMD Results

The following document contains the results of PMD 4.1.

Files

net/sf/hattori/log/Logger.java

Violation Line
A class which only has private constructors should be final 5 - 30

net/sf/hattori/PopulationManager.java

Violation Line
Singleton is not thread safe 46 - 48
Avoid if (x != y) ..; else ..; 132 - 151
Avoid if (x != y) ..; else ..; 183 - 196

net/sf/hattori/populators/AbstractFieldAccessor.java

Violation Line
This abstract class does not have any abstract methods 16 - 59
An empty method in an abstract class should be abstract instead 18 - 38
These nested if statements could be combined 25 - 27
These nested if statements could be combined 33 - 35

net/sf/hattori/populators/domain/AbstractDomainObjectFieldPopulator.java

Violation Line
Deeply nested if..then statements are hard to read 29 - 44
These nested if statements could be combined 32 - 43

net/sf/hattori/populators/domain/ByNameDomainObjectFieldPopulator.java

Violation Line
The class 'ByNameDomainObjectFieldPopulator' has a Cyclomatic Complexity of 8 (Highest = 12). 14 - 97
The method 'setFieldValue' has a Cyclomatic Complexity of 12. 28 - 95
Caught exception is rethrown, original stack trace may be lost 76

net/sf/hattori/populators/domain/DomainObjectCollectionFieldPopulator.java

Violation Line
The class 'DomainObjectCollectionFieldPopulator' has a Cyclomatic Complexity of 15 (Highest = 24). 20 - 178
The method disassembleCollectionField() has an NPath complexity of 3315 54 - 176
Avoid really long methods. 54 - 176
The method 'disassembleCollectionField' has a Cyclomatic Complexity of 24. 54 - 176
Avoid if (x != y) ..; else ..; 117 - 166
Avoid unused local variables such as 'domain'. 132

net/sf/hattori/populators/domain/DomainObjectDirectFieldPopulator.java

Violation Line
The class 'DomainObjectDirectFieldPopulator' has a Cyclomatic Complexity of 8 (Highest = 11). 14 - 108
The method 'disassembleField' has a Cyclomatic Complexity of 11. 44 - 106
Caught exception is rethrown, original stack trace may be lost 87

net/sf/hattori/populators/dto/DTODirectFieldPopulator.java

Violation Line
Avoid unused imports such as 'org.apache.commons.lang.StringUtils' 5
Avoid unused imports such as 'net.sf.hattori.populators.DynamicPopulator' 11

net/sf/hattori/populators/dto/DTOFieldPopulator.java

Violation Line
Deeply nested if..then statements are hard to read 42 - 46

net/sf/hattori/populators/DynamicPopulator.java

Violation Line
These nested if statements could be combined 37 - 39
Avoid if (x != y) ..; else ..; 80 - 92
Avoid if (x != y) ..; else ..; 82 - 92
Avoid if (x != y) ..; else ..; 84 - 92
Avoid if (x != y) ..; else ..; 96 - 103
Avoid if (x != y) ..; else ..; 98 - 103

net/sf/hattori/repository/AbstractPersistentObjectDTO.java

Violation Line
An empty method in an abstract class should be abstract instead 15 - 17
An empty method in an abstract class should be abstract instead 23 - 25
An empty method in an abstract class should be abstract instead 45 - 48
An empty method in an abstract class should be abstract instead 50 - 52
An empty method in an abstract class should be abstract instead 54 - 58
An empty method in an abstract class should be abstract instead 60 - 62