Fork me on GitHub

PMD Results

The following document contains the results of PMD 5.3.5.

Files

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/TaskNotifyMyLuteceConfig.java

Violation Line
The user-supplied array 'listIdsNotificationType' is stored directly. 170
Consider using varargs for methods or constructors which take an array the last parameter. 170
Returning '_listIdsNotificationType' may expose an internal array. 181
Consider using varargs for methods or constructors which take an array the last parameter. 208
The user-supplied array 'listIdsRetrievalType' is stored directly. 208
Returning '_listIdsRetrievalType' may expose an internal array. 219
Consider using varargs for methods or constructors which take an array the last parameter. 247
The user-supplied array 'listUserGuid' is stored directly. 247
Returning '_listUserGuid' may expose an internal array. 258

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/TaskNotifyMyLuteceConfigDAO.java

Violation Line
Use block level rather than method level synchronization 60–75

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/notification/INotificationType.java

Violation Line
Rather than using a lot of String arguments, consider using a container object for those values. 96

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/notification/NotificationTypeDAO.java

Violation Line
Use block level rather than method level synchronization 81–92

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/notification/NotificationTypeEmail.java

Violation Line
Rather than using a lot of String arguments, consider using a container object for those values. 58

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/notification/NotificationTypeWS.java

Violation Line
Rather than using a lot of String arguments, consider using a container object for those values. 49

fr/paris/lutece/plugins/workflow/modules/notifymylutece/business/retrieval/RetrievalTypeDAO.java

Violation Line
Use block level rather than method level synchronization 81–92

fr/paris/lutece/plugins/workflow/modules/notifymylutece/service/NotifyMyLutecePlugin.java

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. 47–59

fr/paris/lutece/plugins/workflow/modules/notifymylutece/service/NotifyMyLuteceService.java

Violation Line
A high number of imports can indicate a high degree of coupling within an object. 34–598
Possible God class (WMC=75, ATFD=145, TCC=0.0) 34–598
The class 'NotifyMyLuteceService' has a Standard Cyclomatic Complexity of 4 (Highest = 10). 90–598
The class 'NotifyMyLuteceService' has a Cyclomatic Complexity of 5 (Highest = 19). 90–598
The class 'NotifyMyLuteceService' has a Modified Cyclomatic Complexity of 4 (Highest = 10). 90–598
Private field '_listRefusedEntryTypes' could be made final; it is only initialized in the declaration or constructor. 95
Private field '_listAcceptedEntryTypes' could be made final; it is only initialized in the declaration or constructor. 96
The method fillModel() has an NPath complexity of 294 337–426
The method 'fillModel' has a Standard Cyclomatic Complexity of 10. 337–426
The method 'fillModel' has a Cyclomatic Complexity of 19. 337–426
The method 'fillModel' has a Modified Cyclomatic Complexity of 10. 337–426
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 343
Unnecessary use of fully qualified name 'fr.paris.lutece.plugins.directory.business.EntryTypeGeolocation' due to existing import 'fr.paris.lutece.plugins.directory.business.EntryTypeGeolocation' 361
Unnecessary use of fully qualified name 'fr.paris.lutece.plugins.directory.business.EntryTypeGeolocation' due to existing import 'fr.paris.lutece.plugins.directory.business.EntryTypeGeolocation' 369
The method fillModelWithUserAttributes() has an NPath complexity of 627 531–550
StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 561
StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 562
StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 563
StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 564–565
StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 566

fr/paris/lutece/plugins/workflow/modules/notifymylutece/service/NotifyMyLuteceWebService.java

Violation Line
Rather than using a lot of String arguments, consider using a container object for those values. 84
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 90

fr/paris/lutece/plugins/workflow/modules/notifymylutece/service/TaskNotifyMyLutece.java

Violation Line
Deeply nested if..then statements are hard to read 97–102

fr/paris/lutece/plugins/workflow/modules/notifymylutece/service/TaskNotifyMyLuteceConfigService.java

Violation Line
The class 'TaskNotifyMyLuteceConfigService' has a Standard Cyclomatic Complexity of 7 (Highest = 10). 56–215
The class 'TaskNotifyMyLuteceConfigService' has a Modified Cyclomatic Complexity of 7 (Highest = 10). 56–215
The class 'TaskNotifyMyLuteceConfigService' has a Cyclomatic Complexity of 9 (Highest = 13). 56–215
The method 'create' has a Standard Cyclomatic Complexity of 10. 71–111
The method 'create' has a Modified Cyclomatic Complexity of 10. 71–111
The method 'create' has a Cyclomatic Complexity of 13. 71–111
Deeply nested if..then statements are hard to read 84–87
Deeply nested if..then statements are hard to read 96–99
The method 'update' has a Standard Cyclomatic Complexity of 10. 118–164
The method 'update' has a Cyclomatic Complexity of 13. 118–164
The method 'update' has a Modified Cyclomatic Complexity of 10. 118–164
Deeply nested if..then statements are hard to read 133–136
Deeply nested if..then statements are hard to read 147–150

fr/paris/lutece/plugins/workflow/modules/notifymylutece/util/constants/NotifyMyLuteceConstants.java

Violation Line
Avoid variables with short names like ID 50
Avoid excessively long variable names like PROPERTY_WEBSERVICE_MYLUTECE_NOTIFICATION_WEBAPP_URL 66

fr/paris/lutece/plugins/workflow/modules/notifymylutece/util/validation/NotifyMyLuteceConfigValidator.java

Violation Line
Document empty method 61–62

fr/paris/lutece/plugins/workflow/modules/notifymylutece/web/NotifyMyLuteceTaskComponent.java

Violation Line
A high number of imports can indicate a high degree of coupling within an object. 34–263
The class 'NotifyMyLuteceTaskComponent' has a Cyclomatic Complexity of 5 (Highest = 13). 78–263
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 166
Return an empty array rather than null. 217–262
The method 'getSelectedUsers' has a Cyclomatic Complexity of 13. 217–262
The method getSelectedUsers() has an NPath complexity of 216 217–262
These nested if statements could be combined 236–242