Fork me on GitHub

PMD Results

The following document contains the results of PMD 6.13.0.

Violations By Priority

Priority 1

fr/paris/lutece/plugins/grusupply/business/StatusMessage.java

Rule Violation Line
FormalParameterNamingConventions The method parameter name '_strStatus' doesn't match '[a-z][a-zA-Z0-9]*' 28
FormalParameterNamingConventions The method parameter name '_strMessage' doesn't match '[a-z][a-zA-Z0-9]*' 28
FormalParameterNamingConventions The method parameter name '_strType' doesn't match '[a-z][a-zA-Z0-9]*' 28
FormalParameterNamingConventions The method parameter name '_strReason' doesn't match '[a-z][a-zA-Z0-9]*' 28
FormalParameterNamingConventions The method parameter name '_strType' doesn't match '[a-z][a-zA-Z0-9]*' 53
FormalParameterNamingConventions The method parameter name '_strStatus' doesn't match '[a-z][a-zA-Z0-9]*' 73
FormalParameterNamingConventions The method parameter name '_strReason' doesn't match '[a-z][a-zA-Z0-9]*' 93
FormalParameterNamingConventions The method parameter name '_strMessage' doesn't match '[a-z][a-zA-Z0-9]*' 113

fr/paris/lutece/plugins/grusupply/constant/GruSupplyConstants.java

Rule Violation Line
ClassNamingConventions The utility class name 'GruSupplyConstants' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 36–70

fr/paris/lutece/plugins/grusupply/service/CustomerProvider.java

Rule Violation Line
FieldNamingConventions The static field name 'bIsInitialized' doesn't match '_[a-z][a-zA-Z0-9]*' 82

fr/paris/lutece/plugins/grusupply/service/NotificationService.java

Rule Violation Line
FieldNamingConventions The static field name 'bIsInitialized' doesn't match '_[a-z][a-zA-Z0-9]*' 51

fr/paris/lutece/plugins/grusupply/utils/GrusupplyUtils.java

Rule Violation Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 49–89

Priority 2

fr/paris/lutece/plugins/grusupply/service/CustomerProvider.java

Rule Violation Line
AvoidReassigningParameters Avoid reassigning parameters such as 'strGuid' 144

fr/paris/lutece/plugins/grusupply/web/rs/GRUSupplyRestService.java

Rule Violation Line
GuardLogStatement Logger calls should be surrounded by log level guards. 131
GuardLogStatement Logger calls should be surrounded by log level guards. 150
GuardLogStatement Logger calls should be surrounded by log level guards. 349

Priority 3

fr/paris/lutece/plugins/grusupply/constant/GruSupplyConstants.java

Rule Violation Line
CommentRequired Header comments are required 36–70

fr/paris/lutece/plugins/grusupply/service/CustomerProvider.java

Rule Violation Line
RedundantFieldInitializer Avoid using redundant field initializer for 'bIsInitialized' 82

fr/paris/lutece/plugins/grusupply/service/NotificationService.java

Rule Violation Line
CommentRequired Header comments are required 47–99
UseUtilityClass 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. 48–99
RedundantFieldInitializer Avoid using redundant field initializer for 'bIsInitialized' 51

fr/paris/lutece/plugins/grusupply/service/notifyers/NotifyCrmService.java

Rule Violation Line
CommentRequired Header comments are required 62–313
UnnecessaryConstructor Avoid unnecessary constructors - the compiler will generate these for you 75–77
UncommentedEmptyConstructor Document empty constructor 75–77
ConfusingTernary Avoid if (x != y) ..; else ..; 157–164
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 223
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 223
CyclomaticComplexity The method 'buildCrmItemForDemand(Notification, CRMItemTypeEnum)' has a cyclomatic complexity of 14. 247–275
NPathComplexity The method 'buildCrmItemForDemand(Notification, CRMItemTypeEnum)' has an NPath complexity of 972 247–275
ConfusingTernary Avoid if (x != y) ..; else ..; 262–263
CyclomaticComplexity The method 'buildCrmItemForNotification(Notification, CRMItemTypeEnum)' has a cyclomatic complexity of 11. 286–307
NPathComplexity The method 'buildCrmItemForNotification(Notification, CRMItemTypeEnum)' has an NPath complexity of 243 286–307

fr/paris/lutece/plugins/grusupply/service/notifyers/SendEmailService.java

Rule Violation Line
CommentRequired Header comments are required 46–165
UncommentedEmptyConstructor Document empty constructor 53–55
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the SendEmailService constructor if you want a default access modifier 53–55

fr/paris/lutece/plugins/grusupply/service/notifyers/SendSmsService.java

Rule Violation Line
CommentRequired Header comments are required 43–69
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the SendSmsService constructor if you want a default access modifier 46–48
UncommentedEmptyConstructor Document empty constructor 46–48
MissingOverride The method 'process(Notification)' is missing an @Override annotation. 55–63

fr/paris/lutece/plugins/grusupply/service/notifyers/SendStatisticsService.java

Rule Violation Line
CommentRequired Header comments are required 52–115
UnnecessaryConstructor Avoid unnecessary constructors - the compiler will generate these for you 57–59
UncommentedEmptyConstructor Document empty constructor 57–59
MissingOverride The method 'process(Notification)' is missing an @Override annotation. 67–72
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 90
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 90
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 91
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 91
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 102

fr/paris/lutece/plugins/grusupply/web/rs/DemandNotificationRestService.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–289
UseObjectForClearerAPI Rather than using a lot of String arguments, consider using a container object for those values. 91–94
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 96
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 97
UseObjectForClearerAPI Rather than using a lot of String arguments, consider using a container object for those values. 122–126
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 128
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 129
ConfusingTernary Avoid if (x != y) ..; else ..; 204–219
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 214–217

fr/paris/lutece/plugins/grusupply/web/rs/GRUSupplyRestService.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–544
CommentRequired Header comments are required 78–544
NPathComplexity The method 'notification(String)' has an NPath complexity of 536 118–241
CyclomaticComplexity The method 'notification(String)' has a cyclomatic complexity of 17. 118–241
ExcessiveMethodLength Avoid really long methods. 118–241
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 151
AvoidCatchingNPE Avoid catching NullPointerException; consider removing the cause of the NPE. 219
IdenticalCatchBranches 'catch' branch identical to 'JsonParseException' branch 219–222
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 219
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 227
IdenticalCatchBranches 'catch' branch identical to 'IOException' branch 227–230
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 53 characters appended. 317
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 318
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 318
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 318
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 319
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 319
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 320
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 320
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 321
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 321
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 358
AvoidCatchingNPE Avoid catching NullPointerException; consider removing the cause of the NPE. 358
IdenticalCatchBranches 'catch' branch identical to 'JsonParseException' branch 358–361
IdenticalCatchBranches 'catch' branch identical to 'IOException' branch 366–369
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 366
ShortVariable Avoid variables with short names like ex 487
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 497
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 521
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 528

Priority 4

fr/paris/lutece/plugins/grusupply/service/NotificationService.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'fr.paris.lutece.plugins.crmclient.util.CRMException' 36

fr/paris/lutece/plugins/grusupply/service/notifyers/NotifyCrmService.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'com.fasterxml.jackson.databind.JsonMappingException' 52

Files

fr/paris/lutece/plugins/grusupply/business/StatusMessage.java

Rule Violation Priority Line
FormalParameterNamingConventions The method parameter name '_strStatus' doesn't match '[a-z][a-zA-Z0-9]*' 1 28
FormalParameterNamingConventions The method parameter name '_strMessage' doesn't match '[a-z][a-zA-Z0-9]*' 1 28
FormalParameterNamingConventions The method parameter name '_strType' doesn't match '[a-z][a-zA-Z0-9]*' 1 28
FormalParameterNamingConventions The method parameter name '_strReason' doesn't match '[a-z][a-zA-Z0-9]*' 1 28
FormalParameterNamingConventions The method parameter name '_strType' doesn't match '[a-z][a-zA-Z0-9]*' 1 53
FormalParameterNamingConventions The method parameter name '_strStatus' doesn't match '[a-z][a-zA-Z0-9]*' 1 73
FormalParameterNamingConventions The method parameter name '_strReason' doesn't match '[a-z][a-zA-Z0-9]*' 1 93
FormalParameterNamingConventions The method parameter name '_strMessage' doesn't match '[a-z][a-zA-Z0-9]*' 1 113

fr/paris/lutece/plugins/grusupply/constant/GruSupplyConstants.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 36–70
ClassNamingConventions The utility class name 'GruSupplyConstants' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 1 36–70

fr/paris/lutece/plugins/grusupply/service/CustomerProvider.java

Rule Violation Priority Line
FieldNamingConventions The static field name 'bIsInitialized' doesn't match '_[a-z][a-zA-Z0-9]*' 1 82
RedundantFieldInitializer Avoid using redundant field initializer for 'bIsInitialized' 3 82
AvoidReassigningParameters Avoid reassigning parameters such as 'strGuid' 2 144

fr/paris/lutece/plugins/grusupply/service/NotificationService.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'fr.paris.lutece.plugins.crmclient.util.CRMException' 4 36
CommentRequired Header comments are required 3 47–99
UseUtilityClass 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. 3 48–99
FieldNamingConventions The static field name 'bIsInitialized' doesn't match '_[a-z][a-zA-Z0-9]*' 1 51
RedundantFieldInitializer Avoid using redundant field initializer for 'bIsInitialized' 3 51

fr/paris/lutece/plugins/grusupply/service/notifyers/NotifyCrmService.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'com.fasterxml.jackson.databind.JsonMappingException' 4 52
CommentRequired Header comments are required 3 62–313
UnnecessaryConstructor Avoid unnecessary constructors - the compiler will generate these for you 3 75–77
UncommentedEmptyConstructor Document empty constructor 3 75–77
ConfusingTernary Avoid if (x != y) ..; else ..; 3 157–164
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 223
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 223
CyclomaticComplexity The method 'buildCrmItemForDemand(Notification, CRMItemTypeEnum)' has a cyclomatic complexity of 14. 3 247–275
NPathComplexity The method 'buildCrmItemForDemand(Notification, CRMItemTypeEnum)' has an NPath complexity of 972 3 247–275
ConfusingTernary Avoid if (x != y) ..; else ..; 3 262–263
CyclomaticComplexity The method 'buildCrmItemForNotification(Notification, CRMItemTypeEnum)' has a cyclomatic complexity of 11. 3 286–307
NPathComplexity The method 'buildCrmItemForNotification(Notification, CRMItemTypeEnum)' has an NPath complexity of 243 3 286–307

fr/paris/lutece/plugins/grusupply/service/notifyers/SendEmailService.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 46–165
UncommentedEmptyConstructor Document empty constructor 3 53–55
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the SendEmailService constructor if you want a default access modifier 3 53–55

fr/paris/lutece/plugins/grusupply/service/notifyers/SendSmsService.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 43–69
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the SendSmsService constructor if you want a default access modifier 3 46–48
UncommentedEmptyConstructor Document empty constructor 3 46–48
MissingOverride The method 'process(Notification)' is missing an @Override annotation. 3 55–63

fr/paris/lutece/plugins/grusupply/service/notifyers/SendStatisticsService.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 52–115
UnnecessaryConstructor Avoid unnecessary constructors - the compiler will generate these for you 3 57–59
UncommentedEmptyConstructor Document empty constructor 3 57–59
MissingOverride The method 'process(Notification)' is missing an @Override annotation. 3 67–72
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 90
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 90
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 91
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 91
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 102

fr/paris/lutece/plugins/grusupply/utils/GrusupplyUtils.java

Rule Violation Priority Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 49–89

fr/paris/lutece/plugins/grusupply/web/rs/DemandNotificationRestService.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–289
UseObjectForClearerAPI Rather than using a lot of String arguments, consider using a container object for those values. 3 91–94
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 96
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 97
UseObjectForClearerAPI Rather than using a lot of String arguments, consider using a container object for those values. 3 122–126
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 128
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 129
ConfusingTernary Avoid if (x != y) ..; else ..; 3 204–219
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 214–217

fr/paris/lutece/plugins/grusupply/web/rs/GRUSupplyRestService.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–544
CommentRequired Header comments are required 3 78–544
NPathComplexity The method 'notification(String)' has an NPath complexity of 536 3 118–241
CyclomaticComplexity The method 'notification(String)' has a cyclomatic complexity of 17. 3 118–241
ExcessiveMethodLength Avoid really long methods. 3 118–241
GuardLogStatement Logger calls should be surrounded by log level guards. 2 131
GuardLogStatement Logger calls should be surrounded by log level guards. 2 150
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 151
AvoidCatchingNPE Avoid catching NullPointerException; consider removing the cause of the NPE. 3 219
IdenticalCatchBranches 'catch' branch identical to 'JsonParseException' branch 3 219–222
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 219
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 227
IdenticalCatchBranches 'catch' branch identical to 'IOException' branch 3 227–230
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 53 characters appended. 3 317
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 318
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 318
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 318
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 319
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 319
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 320
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 320
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 321
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 321
GuardLogStatement Logger calls should be surrounded by log level guards. 2 349
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 358
AvoidCatchingNPE Avoid catching NullPointerException; consider removing the cause of the NPE. 3 358
IdenticalCatchBranches 'catch' branch identical to 'JsonParseException' branch 3 358–361
IdenticalCatchBranches 'catch' branch identical to 'IOException' branch 3 366–369
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 366
ShortVariable Avoid variables with short names like ex 3 487
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 497
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 521
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 528