Fork me on GitHub

Résultats PMD

Le document suivant contient les résultats de PMD 6.13.0.

Violations By Priority

Priority 1

fr/paris/lutece/plugins/workflow/business/workflowcycledetector/StateTransition.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 40–142
FieldNamingConventions The final field name '_stateBefore' doesn't match '[a-z][a-zA-Z0-9]*' 42
FieldNamingConventions The final field name '_stateAfter' doesn't match '[a-z][a-zA-Z0-9]*' 43

fr/paris/lutece/plugins/workflow/service/json/WorkflowJsonService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 77–366
LocalVariableNamingConventions The local variable name 'StateBefore' doesn't match '[a-z][a-zA-Z0-9]*' 268
LocalVariableNamingConventions The local variable name 'PrerequisiteTypeList' doesn't match '[a-z][a-zA-Z0-9]*' 351

fr/paris/lutece/plugins/workflow/service/provider/MarkerProviderService.java

Rule Violation Ligne
FieldNamingConventions The final field name '_listMarkerProviders' doesn't match '[a-z][a-zA-Z0-9]*' 53

fr/paris/lutece/plugins/workflow/utils/WorkflowCycleUtils.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 51–235

fr/paris/lutece/plugins/workflow/web/task/NoConfigTaskComponent.java

Rule Violation Ligne
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 65–68
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 74–77

fr/paris/lutece/plugins/workflow/web/task/NoFormTaskComponent.java

Rule Violation Ligne
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 53–56
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 62–65

Priority 2

fr/paris/lutece/plugins/workflow/business/resource/ResourceHistoryDAO.java

Rule Violation Ligne
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 481

fr/paris/lutece/plugins/workflow/service/WorkflowProvider.java

Rule Violation Ligne
AvoidReassigningParameters Avoid reassigning parameters such as 'listActions' 124
AvoidReassigningParameters Avoid reassigning parameters such as 'user' 378
AvoidReassigningParameters Avoid reassigning parameters such as 'user' 399

Priority 3

fr/paris/lutece/plugins/workflow/business/action/ActionDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 57–530
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 99–122
ConfusingTernary Avoid if (x != y) ..; else ..; 113–114
ConfusingTernary Avoid if (x != y) ..; else ..; 144–145
NPathComplexity The method 'selectActionsByFilter(ActionFilter)' has an NPath complexity of 32896 212–301
CyclomaticComplexity The method 'selectActionsByFilter(ActionFilter)' has a cyclomatic complexity of 16. 212–301
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 307–317

fr/paris/lutece/plugins/workflow/business/action/ActionStateDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 44–129
UnusedPrivateField Avoid unused private fields such as 'SQL_QUERY_SELECT_ALL'. 46
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 58–73

fr/paris/lutece/plugins/workflow/business/icon/IconDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 63–81

fr/paris/lutece/plugins/workflow/business/prerequisite/PrerequisiteDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 86–100

fr/paris/lutece/plugins/workflow/business/prerequisite/PrerequisiteDTO.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 56–63

fr/paris/lutece/plugins/workflow/business/resource/ResourceHistoryDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 58–528
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 86–105
ShortVariable Avoid variables with short names like sb 459
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 460
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 461
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 506–509

fr/paris/lutece/plugins/workflow/business/resource/ResourceWorkflowDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 59–829
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 102–124
ConfusingTernary Avoid if (x != y) ..; else ..; 112–119
ConfusingTernary Avoid if (x != y) ..; else ..; 140–147
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 605
NPathComplexity The method 'buildFilterQuerydFooter(DAOUtil, ResourceWorkflowFilter, List, Integer)' has an NPath complexity of 648 654–716
CyclomaticComplexity The method 'buildFilterQuerydFooter(DAOUtil, ResourceWorkflowFilter, List, Integer)' has a cyclomatic complexity of 12. 654–716
NPathComplexity The method 'buildFilterQuerydHeader(ResourceWorkflowFilter, List, String, String)' has an NPath complexity of 432 731–801
CyclomaticComplexity The method 'buildFilterQuerydHeader(ResourceWorkflowFilter, List, String, String)' has a cyclomatic complexity of 11. 731–801
ShortVariable Avoid variables with short names like sb 770
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 771
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 772
ShortVariable Avoid variables with short names like sb 786
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 787
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 788
ConfusingTernary Avoid if (x != y) ..; else ..; 818–825
AssignmentInOperand Avoid assignments in operands 818

fr/paris/lutece/plugins/workflow/business/state/StateDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 54–369
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 78–107

fr/paris/lutece/plugins/workflow/business/task/TaskDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 77–93

fr/paris/lutece/plugins/workflow/business/workflow/WorkflowDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 71–89

fr/paris/lutece/plugins/workflow/business/workflowcycledetector/StateTransition.java

Rule Violation Ligne
CommentRequired Header comments are required 40–142
RedundantFieldInitializer Avoid using redundant field initializer for '_action' 45

fr/paris/lutece/plugins/workflow/modules/archive/ArchivalType.java

Rule Violation Ligne
CommentRequired Enum comments are required 36–40

fr/paris/lutece/plugins/workflow/modules/archive/business/ArchiveConfigDao.java

Rule Violation Ligne
CommentRequired Header comments are required 41–126
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 56–68

fr/paris/lutece/plugins/workflow/modules/archive/business/ArchiveResource.java

Rule Violation Ligne
CommentRequired Header comments are required 38–152
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 100
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 128

fr/paris/lutece/plugins/workflow/modules/archive/business/ArchiveResourceDao.java

Rule Violation Ligne
CommentRequired Header comments are required 41–167
ConfusingTernary Avoid if (x != y) ..; else ..; 58–65
ConfusingTernary Avoid if (x != y) ..; else ..; 67–74
ConfusingTernary Avoid if (x != y) ..; else ..; 109–116
ConfusingTernary Avoid if (x != y) ..; else ..; 118–125
AssignmentInOperand Avoid assignments in operands 154
AssignmentInOperand Avoid assignments in operands 159

fr/paris/lutece/plugins/workflow/modules/archive/business/IArchiveResourceDao.java

Rule Violation Ligne
CommentRequired Header comments are required 36–76

fr/paris/lutece/plugins/workflow/modules/archive/daemon/ArchiveDaemon.java

Rule Violation Ligne
CommentRequired Header comments are required 67–142
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 69
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 70
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 71
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 72
ImmutableField Private field '_archiveService' could be made final; it is only initialized in the declaration or constructor. 73
ShortVariable Avoid variables with short names like wf 98
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 114–118

fr/paris/lutece/plugins/workflow/modules/archive/service/AbstractArchiveProcessingService.java

Rule Violation Ligne
CommentRequired Protected method constructor comments are required 58–61
CommentRequired Protected method constructor comments are required 63–67

fr/paris/lutece/plugins/workflow/modules/archive/service/IArchiveProcessingService.java

Rule Violation Ligne
CommentRequired Header comments are required 38–46

fr/paris/lutece/plugins/workflow/modules/archive/service/TaskArchive.java

Rule Violation Ligne
CommentRequired Header comments are required 50–105
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 63
CommentRequired Public method and constructor comments are required 79–85

fr/paris/lutece/plugins/workflow/modules/archive/web/ArchiveTaskComponent.java

Rule Violation Ligne
CommentRequired Header comments are required 66–236
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 111

fr/paris/lutece/plugins/workflow/modules/assignment/business/AssignmentHistory.java

Rule Violation Ligne
ShortVariable Avoid variables with short names like id 62

fr/paris/lutece/plugins/workflow/modules/assignment/business/AssignmentHistoryDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 59–71

fr/paris/lutece/plugins/workflow/modules/assignment/business/TaskAssignmentConfigDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 59–75

fr/paris/lutece/plugins/workflow/modules/assignment/business/WorkgroupConfigDAO.java

Rule Violation Ligne
ConfusingTernary Avoid if (x != y) ..; else ..; 133–140

fr/paris/lutece/plugins/workflow/modules/assignment/service/TaskAssignment.java

Rule Violation Ligne
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 121–136
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 159
ShortVariable Avoid variables with short names like t 162

fr/paris/lutece/plugins/workflow/modules/assignment/web/AssignmentTaskComponent.java

Rule Violation Ligne
NPathComplexity The method 'doSaveConfig(HttpServletRequest, Locale, ITask)' has an NPath complexity of 1152 115–205
CyclomaticComplexity The method 'doSaveConfig(HttpServletRequest, Locale, ITask)' has a cyclomatic complexity of 13. 115–205
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 119
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 121
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 172–192
ConfusingTernary Avoid if (x != y) ..; else ..; 180–188
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 213
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 214
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 279
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 295
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 329

fr/paris/lutece/plugins/workflow/modules/choice/business/ChoiceTaskConfigDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 57–69

fr/paris/lutece/plugins/workflow/modules/choice/web/ChoiceTaskComponent.java

Rule Violation Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 82
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 94

fr/paris/lutece/plugins/workflow/modules/comment/business/CommentValue.java

Rule Violation Ligne
ShortVariable Avoid variables with short names like id 66
ShortVariable Avoid variables with short names like sb 115

fr/paris/lutece/plugins/workflow/modules/comment/business/CommentValueDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 56–68

fr/paris/lutece/plugins/workflow/modules/comment/business/TaskCommentConfigDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 58–71

fr/paris/lutece/plugins/workflow/modules/comment/service/CommentResourceIdService.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 61–64
MissingOverride The method 'register()' is missing an @Override annotation. 69–83
ShortVariable Avoid variables with short names like rt 71
ShortVariable Avoid variables with short names like p 77
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 92–95
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 100–103

fr/paris/lutece/plugins/workflow/modules/comment/web/CommentJspBean.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–209
ImmutableField Private field '_commentValueService' could be made final; it is only initialized in the declaration or constructor. 96
ImmutableField Private field '_resourceHistoryService' could be made final; it is only initialized in the declaration or constructor. 97
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 98
ImmutableField Private field '_taskComponentManager' could be made final; it is only initialized in the declaration or constructor. 99

fr/paris/lutece/plugins/workflow/modules/comment/web/CommentTaskComponent.java

Rule Violation Ligne
CommentRequired Public method and constructor comments are required 99–102
CommentRequired Public method and constructor comments are required 104–108
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 116
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 117
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 148
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 164
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 199

fr/paris/lutece/plugins/workflow/modules/confirmaction/business/ConfirmActionTaskConfigDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 57–69

fr/paris/lutece/plugins/workflow/modules/confirmaction/web/ConfirmActionTaskComponent.java

Rule Violation Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 80
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 92

fr/paris/lutece/plugins/workflow/modules/duration/business/PrerequisiteDurationConfig.java

Rule Violation Ligne
CommentRequired Header comments are required 38–73
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _nDuration field if you want a default access modifier 46
DefaultPackage Use explicit scoping instead of the default package private level 46

fr/paris/lutece/plugins/workflow/modules/duration/business/PrerequisiteDurationConfigDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 42–111

fr/paris/lutece/plugins/workflow/modules/duration/service/PrerequisiteDuration.java

Rule Violation Ligne
CommentRequired Header comments are required 55–131
CommentRequired Public method and constructor comments are required 66–69
MissingOverride The method 'getPrerequisiteType()' is missing an @Override annotation. 66–69
MissingOverride The method 'getTitleI18nKey()' is missing an @Override annotation. 71–74
CommentRequired Public method and constructor comments are required 71–74
CommentRequired Public method and constructor comments are required 76–79
MissingOverride The method 'hasConfiguration()' is missing an @Override annotation. 76–79
CommentRequired Public method and constructor comments are required 81–84
MissingOverride The method 'getEmptyConfiguration()' is missing an @Override annotation. 81–84
CommentRequired Public method and constructor comments are required 86–89
MissingOverride The method 'getConfigurationDaoBeanName()' is missing an @Override annotation. 86–89
CommentRequired Public method and constructor comments are required 91–99
MissingOverride The method 'getConfigHtml(IPrerequisiteConfig, HttpServletRequest, Locale)' is missing an @Override annotation. 91–99
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 93

fr/paris/lutece/plugins/workflow/modules/notification/business/TaskNotificationConfigDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 59–73

fr/paris/lutece/plugins/workflow/modules/notification/service/TaskNotification.java

Rule Violation Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 96
ShortVariable Avoid variables with short names like t 99

fr/paris/lutece/plugins/workflow/modules/notification/web/NotificationTaskComponent.java

Rule Violation Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 80

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskConfig.java

Rule Violation Ligne
CommentRequired Header comments are required 41–64

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskConfigDao.java

Rule Violation Ligne
CommentRequired Header comments are required 39–106

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskInformation.java

Rule Violation Ligne
CommentRequired Header comments are required 36–93

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskInformationDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 38–96

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskInformationHome.java

Rule Violation Ligne
CommentRequired Header comments are required 38–89

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskConfig.java

Rule Violation Ligne
CommentRequired Header comments are required 41–104

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskConfigDao.java

Rule Violation Ligne
CommentRequired Header comments are required 39–114

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskInformation.java

Rule Violation Ligne
CommentRequired Header comments are required 36–93

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskInformationDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 38–96

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskInformationHome.java

Rule Violation Ligne
CommentRequired Header comments are required 38–89

fr/paris/lutece/plugins/workflow/modules/state/business/IChangeStateTaskInformationDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 36–67

fr/paris/lutece/plugins/workflow/modules/state/business/IChooseStateTaskInformationDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 36–67

fr/paris/lutece/plugins/workflow/modules/state/daemon/ChangeStateDaemon.java

Rule Violation Ligne
CommentRequired Header comments are required 62–133
ImmutableField Private field '_changeStateTaskService' could be made final; it is only initialized in the declaration or constructor. 65
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 66
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 67
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 68
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 69
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 112

fr/paris/lutece/plugins/workflow/modules/state/daemon/ChooseStateDaemon.java

Rule Violation Ligne
CommentRequired Header comments are required 62–133
ImmutableField Private field '_chooseStateTaskService' could be made final; it is only initialized in the declaration or constructor. 65
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 66
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 67
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 68
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 69
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 112

fr/paris/lutece/plugins/workflow/modules/state/service/AbstractStateTaskService.java

Rule Violation Ligne
CommentRequired Header comments are required 58–136
CommentRequired Public method and constructor comments are required 75–92
CommentRequired Public method and constructor comments are required 94–103
CommentRequired Public method and constructor comments are required 105–133
CommentRequired Protected method constructor comments are required 135

fr/paris/lutece/plugins/workflow/modules/state/service/ChangeStateTask.java

Rule Violation Ligne
CommentRequired Header comments are required 47–78

fr/paris/lutece/plugins/workflow/modules/state/service/ChangeStateTaskService.java

Rule Violation Ligne
CommentRequired Header comments are required 46–75

fr/paris/lutece/plugins/workflow/modules/state/service/ChooseStateTask.java

Rule Violation Ligne
CommentRequired Header comments are required 48–88

fr/paris/lutece/plugins/workflow/modules/state/service/IChangeStateTaskService.java

Rule Violation Ligne
CommentRequired Header comments are required 41–80

fr/paris/lutece/plugins/workflow/modules/state/service/IChooseStateController.java

Rule Violation Ligne
CommentRequired Header comments are required 43–119
UncommentedEmptyMethodBody Document empty method body 108–109
UncommentedEmptyMethodBody Document empty method body 117–118

fr/paris/lutece/plugins/workflow/modules/state/web/ChangeStateTaskComponent.java

Rule Violation Ligne
CommentRequired Header comments are required 52–94
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 70
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 82
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 82

fr/paris/lutece/plugins/workflow/modules/state/web/ChooseStateTaskComponent.java

Rule Violation Ligne
CommentRequired Header comments are required 53–122
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 77
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 110
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 110

fr/paris/lutece/plugins/workflow/service/ActionResourceIdService.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 73–76
ShortVariable Avoid variables with short names like rt 84
ShortVariable Avoid variables with short names like p 90
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 110–125
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 136–148
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 159
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 160
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 160
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 161
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 167
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 169
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 170

fr/paris/lutece/plugins/workflow/service/StateResourceIdService.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 72–75
ShortVariable Avoid variables with short names like rt 83
ShortVariable Avoid variables with short names like p 89
ConfusingTernary Avoid if (x != y) ..; else ..; 139

fr/paris/lutece/plugins/workflow/service/WorkflowGraphExportService.java

Rule Violation Ligne
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. 52–169
ShortVariable Avoid variables with short names like wf 74
CyclomaticComplexity The method 'generate(Workflow, String, boolean)' has a cyclomatic complexity of 19. 74–130
NPathComplexity The method 'generate(Workflow, String, boolean)' has an NPath complexity of 2550 74–130
ShortVariable Avoid variables with short names like sb 76
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 124
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 125
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 140
ShortVariable Avoid variables with short names like sb 140
ControlStatementBraces This statement should have braces 143
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 161
ShortVariable Avoid variables with short names like sb 161
UnusedLocalVariable Avoid unused local variables such as 'sb'. 161
ControlStatementBraces This statement should have braces 163

fr/paris/lutece/plugins/workflow/service/WorkflowProvider.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–645
MissingOverride The method 'getActions(int, String, Collection, User)' is missing an @Override annotation. 124–129
MissingOverride The method 'getAuthorizedActions(Collection, User)' is missing an @Override annotation. 135–138
MissingOverride The method 'getActions(String, Map, User)' is missing an @Override annotation. 144–156
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 200
ConfusingTernary Avoid if (x != y) ..; else ..; 211–237
ConfusingTernary Avoid if (x != y) ..; else ..; 261–272
MissingOverride The method 'getDisplayDocumentHistory(int, String, int, HttpServletRequest, Locale, Map, String, User)' is missing an @Override annotation. 321–334
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 356
MissingOverride The method 'canProcessAction(int, String, int, HttpServletRequest, User)' is missing an @Override annotation. 399–414
CyclomaticComplexity The method 'isAuthorized(int, String, int, User)' has a cyclomatic complexity of 10. 420–470
ConfusingTernary Avoid if (x != y) ..; else ..; 426–443
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 536
ConfusingTernary Avoid if (x != y) ..; else ..; 548–555
ConfusingTernary Avoid if (x != y) ..; else ..; 591

fr/paris/lutece/plugins/workflow/service/json/TaskDeserializer.java

Rule Violation Ligne
CommentRequired Header comments are required 51–78
ShortVariable Avoid variables with short names like p 55
ShortVariable Avoid variables with short names like oc 57

fr/paris/lutece/plugins/workflow/service/json/TaskSerialiser.java

Rule Violation Ligne
CommentRequired Header comments are required 44–61

fr/paris/lutece/plugins/workflow/service/json/TimestampDeserializer.java

Rule Violation Ligne
CommentRequired Header comments are required 46–58
ImmutableField Private field '_fmt' could be made final; it is only initialized in the declaration or constructor. 48
ShortVariable Avoid variables with short names like dt 54

fr/paris/lutece/plugins/workflow/service/json/TimestampSerializer.java

Rule Violation Ligne
CommentRequired Header comments are required 46–59
ImmutableField Private field '_fmt' could be made final; it is only initialized in the declaration or constructor. 48
ShortVariable Avoid variables with short names like z 54

fr/paris/lutece/plugins/workflow/service/json/WorkflowJsonData.java

Rule Violation Ligne
DataClass The class 'WorkflowJsonData' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=10, WMC=10) 45–142
CommentRequired Header comments are required 45–142

fr/paris/lutece/plugins/workflow/service/json/WorkflowJsonService.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–366
CommentRequired Header comments are required 77–366
TooManyMethods This class has too many methods, consider refactoring it. 78–366
ImmutableField Private field '_objectMapper' could be made final; it is only initialized in the declaration or constructor. 83
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 85
ImmutableField Private field '_stateService' could be made final; it is only initialized in the declaration or constructor. 86
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 87
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 88
ImmutableField Private field '_taskFactory' could be made final; it is only initialized in the declaration or constructor. 89
ImmutableField Private field '_prerequisiteManagementService' could be made final; it is only initialized in the declaration or constructor. 90
CommentRequired Public method and constructor comments are required 106–109
NPathComplexity The method 'jsonExportWorkflow(int)' has an NPath complexity of 768 117–199
CommentRequired Public method and constructor comments are required 202–217
CommentRequired Public method and constructor comments are required 219–232
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 236
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 268
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 279
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 351

fr/paris/lutece/plugins/workflow/service/prerequisite/AutomaticActionDaemon.java

Rule Violation Ligne
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 77 characters appended. 107
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 108
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 108
ControlStatementBraces This statement should have braces 110

fr/paris/lutece/plugins/workflow/service/provider/ProviderManagerUtil.java

Rule Violation Ligne
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 73
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 132

fr/paris/lutece/plugins/workflow/service/task/TaskFactory.java

Rule Violation Ligne
ShortVariable Avoid variables with short names like e 121

fr/paris/lutece/plugins/workflow/service/taskinfo/TaskInfoManager.java

Rule Violation Ligne
ConfusingTernary Avoid if (x != y) ..; else ..; 138–145

fr/paris/lutece/plugins/workflow/utils/WorkflowCycleUtils.java

Rule Violation Ligne
CommentRequired Header comments are required 51–235
LinguisticNaming Linguistics Antipattern - The method 'hasCycle' indicates linguistically it returns a boolean, but it returns 'ErrorMessage' 95–121
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 97
ControlStatementBraces This statement should have braces 220

fr/paris/lutece/plugins/workflow/utils/WorkflowUtils.java

Rule Violation Ligne
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 194
AssignmentInOperand Avoid assignments in operands 194

fr/paris/lutece/plugins/workflow/web/IconJspBean.java

Rule Violation Ligne
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 122
ImmutableField Private field '_iconService' could be made final; it is only initialized in the declaration or constructor. 125
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 126
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 137
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 216
ConfusingTernary Avoid if (x != y) ..; else ..; 255–262
NPathComplexity The method 'getIconData(HttpServletRequest, Icon)' has an NPath complexity of 784 337–406
CyclomaticComplexity The method 'getIconData(HttpServletRequest, Icon)' has a cyclomatic complexity of 18. 337–406
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 344
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 345
ConfusingTernary Avoid if (x != y) ..; else ..; 392–400

fr/paris/lutece/plugins/workflow/web/WorkflowDashboardComponent.java

Rule Violation Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 109
ShortVariable Avoid variables with short names like t 116

fr/paris/lutece/plugins/workflow/web/WorkflowJspBean.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–3101
ExcessivePublicCount This class has a bunch of public methods and attributes 34–3101
TooManyFields Too many fields 132–3101
GodClass Possible God Class (WMC=336, ATFD=533, TCC=32.981%) 132–3101
CyclomaticComplexity The class 'WorkflowJspBean' has a total cyclomatic complexity of 336 (highest 16). 132–3101
ExcessiveClassLength Avoid really long classes. 132–3101
TooManyMethods This class has too many methods, consider refactoring it. 133–3101
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 305
RedundantFieldInitializer Avoid using redundant field initializer for '_bIsAscSort' 315
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 316
ImmutableField Private field '_stateService' could be made final; it is only initialized in the declaration or constructor. 317
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 318
ImmutableField Private field '_iconService' could be made final; it is only initialized in the declaration or constructor. 319
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 320
ImmutableField Private field '_taskFactory' could be made final; it is only initialized in the declaration or constructor. 321
ImmutableField Private field '_taskComponentManager' could be made final; it is only initialized in the declaration or constructor. 322
ImmutableField Private field '_prerequisiteManagementService' could be made final; it is only initialized in the declaration or constructor. 323
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 382
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 416
NcssCount The method 'getModifyWorkflow(HttpServletRequest)' has a NCSS line count of 77. 471–606
ExcessiveMethodLength Avoid really long methods. 471–606
NPathComplexity The method 'getModifyWorkflow(HttpServletRequest)' has an NPath complexity of 3456 471–606
CyclomaticComplexity The method 'getModifyWorkflow(HttpServletRequest)' has a cyclomatic complexity of 16. 471–606
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 473
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 475
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 476
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 568
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 582
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 635–638
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 642–645
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 649–652
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 698
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 769
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 808
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 864
CyclomaticComplexity The method 'doCreateState(HttpServletRequest)' has a cyclomatic complexity of 10. 885–944
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 977
CyclomaticComplexity The method 'doModifyState(HttpServletRequest)' has a cyclomatic complexity of 11. 998–1053
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1022
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1169
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1170
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1171
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1233
CyclomaticComplexity The method 'getActionData(HttpServletRequest, Action)' has a cyclomatic complexity of 15. 1325–1434
NcssCount The method 'getActionData(HttpServletRequest, Action)' has a NCSS line count of 66. 1325–1434
ExcessiveMethodLength Avoid really long methods. 1325–1434
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1337
CyclomaticComplexity The method 'getModifyAction(HttpServletRequest)' has a cyclomatic complexity of 10. 1445–1532
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1504
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1721
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1758
ShortVariable Avoid variables with short names like it 1995
CyclomaticComplexity The method 'doChangeOrderState(HttpServletRequest)' has a cyclomatic complexity of 10. 2144–2215
CyclomaticComplexity The method 'doChangeOrderAction(HttpServletRequest)' has a cyclomatic complexity of 10. 2224–2292
CyclomaticComplexity The method 'doChangeOrderTask(HttpServletRequest)' has a cyclomatic complexity of 11. 2301–2370
CommentRequired Public method and constructor comments are required 2672–2679
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 2861
CyclomaticComplexity The method 'doRemoveTaskFromReflexiveAction(HttpServletRequest)' has a cyclomatic complexity of 11. 2983–3021
ShortVariable Avoid variables with short names like os 3054
CommentRequired Public method and constructor comments are required 3068–3080
CommentRequired Public method and constructor comments are required 3082–3100
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3097

fr/paris/lutece/plugins/workflow/web/prerequisite/PrerequisiteJspBean.java

Rule Violation Ligne
ImmutableField Private field '_prerequisiteManagementService' could be made final; it is only initialized in the declaration or constructor. 88
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 129
ConfusingTernary Avoid if (x != y) ..; else ..; 137–147
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 193–203
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 262
ConfusingTernary Avoid if (x != y) ..; else ..; 270–280

Priority 4

fr/paris/lutece/plugins/workflow/business/prerequisite/PrerequisiteDTO.java

Rule Violation Ligne
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 91–94

fr/paris/lutece/plugins/workflow/modules/choice/web/ChoiceTaskComponent.java

Rule Violation Ligne
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.service.message.AdminMessage' 47
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.service.message.AdminMessageService' 48

fr/paris/lutece/plugins/workflow/utils/WorkflowUtils.java

Rule Violation Ligne
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 145
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 276

Fichiers

fr/paris/lutece/plugins/workflow/business/action/ActionDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 57–530
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 99–122
ConfusingTernary Avoid if (x != y) ..; else ..; 3 113–114
ConfusingTernary Avoid if (x != y) ..; else ..; 3 144–145
NPathComplexity The method 'selectActionsByFilter(ActionFilter)' has an NPath complexity of 32896 3 212–301
CyclomaticComplexity The method 'selectActionsByFilter(ActionFilter)' has a cyclomatic complexity of 16. 3 212–301
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 307–317

fr/paris/lutece/plugins/workflow/business/action/ActionStateDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 44–129
UnusedPrivateField Avoid unused private fields such as 'SQL_QUERY_SELECT_ALL'. 3 46
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 58–73

fr/paris/lutece/plugins/workflow/business/icon/IconDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 63–81

fr/paris/lutece/plugins/workflow/business/prerequisite/PrerequisiteDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 86–100

fr/paris/lutece/plugins/workflow/business/prerequisite/PrerequisiteDTO.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 56–63
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 91–94

fr/paris/lutece/plugins/workflow/business/resource/ResourceHistoryDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 58–528
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 86–105
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 400
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 412
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 412
ShortVariable Avoid variables with short names like sb 3 459
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 460
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 461
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 481
AvoidReassigningParameters Avoid reassigning parameters such as 'nPos' 2 481
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 506–509

fr/paris/lutece/plugins/workflow/business/resource/ResourceWorkflowDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 59–829
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 102–124
ConfusingTernary Avoid if (x != y) ..; else ..; 3 112–119
ConfusingTernary Avoid if (x != y) ..; else ..; 3 140–147
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 605
NPathComplexity The method 'buildFilterQuerydFooter(DAOUtil, ResourceWorkflowFilter, List, Integer)' has an NPath complexity of 648 3 654–716
CyclomaticComplexity The method 'buildFilterQuerydFooter(DAOUtil, ResourceWorkflowFilter, List, Integer)' has a cyclomatic complexity of 12. 3 654–716
NPathComplexity The method 'buildFilterQuerydHeader(ResourceWorkflowFilter, List, String, String)' has an NPath complexity of 432 3 731–801
CyclomaticComplexity The method 'buildFilterQuerydHeader(ResourceWorkflowFilter, List, String, String)' has a cyclomatic complexity of 11. 3 731–801
ShortVariable Avoid variables with short names like sb 3 770
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 771
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 772
ShortVariable Avoid variables with short names like sb 3 786
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 787
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 788
ConfusingTernary Avoid if (x != y) ..; else ..; 3 818–825
AssignmentInOperand Avoid assignments in operands 3 818

fr/paris/lutece/plugins/workflow/business/state/StateDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 54–369
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 78–107

fr/paris/lutece/plugins/workflow/business/task/TaskDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 77–93

fr/paris/lutece/plugins/workflow/business/workflow/WorkflowDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 71–89

fr/paris/lutece/plugins/workflow/business/workflowcycledetector/StateTransition.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 40–142
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 40–142
FieldNamingConventions The final field name '_stateBefore' doesn't match '[a-z][a-zA-Z0-9]*' 1 42
FieldNamingConventions The final field name '_stateAfter' doesn't match '[a-z][a-zA-Z0-9]*' 1 43
RedundantFieldInitializer Avoid using redundant field initializer for '_action' 3 45

fr/paris/lutece/plugins/workflow/modules/archive/ArchivalType.java

Rule Violation Priority Ligne
CommentRequired Enum comments are required 3 36–40

fr/paris/lutece/plugins/workflow/modules/archive/business/ArchiveConfigDao.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 41–126
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 56–68

fr/paris/lutece/plugins/workflow/modules/archive/business/ArchiveResource.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–152
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 100
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 128

fr/paris/lutece/plugins/workflow/modules/archive/business/ArchiveResourceDao.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 41–167
ConfusingTernary Avoid if (x != y) ..; else ..; 3 58–65
ConfusingTernary Avoid if (x != y) ..; else ..; 3 67–74
ConfusingTernary Avoid if (x != y) ..; else ..; 3 109–116
ConfusingTernary Avoid if (x != y) ..; else ..; 3 118–125
AssignmentInOperand Avoid assignments in operands 3 154
AssignmentInOperand Avoid assignments in operands 3 159

fr/paris/lutece/plugins/workflow/modules/archive/business/IArchiveResourceDao.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 36–76

fr/paris/lutece/plugins/workflow/modules/archive/daemon/ArchiveDaemon.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 67–142
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 3 69
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 3 70
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 3 71
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 3 72
ImmutableField Private field '_archiveService' could be made final; it is only initialized in the declaration or constructor. 3 73
ShortVariable Avoid variables with short names like wf 3 98
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 114–118

fr/paris/lutece/plugins/workflow/modules/archive/service/AbstractArchiveProcessingService.java

Rule Violation Priority Ligne
CommentRequired Protected method constructor comments are required 3 58–61
CommentRequired Protected method constructor comments are required 3 63–67

fr/paris/lutece/plugins/workflow/modules/archive/service/IArchiveProcessingService.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–46

fr/paris/lutece/plugins/workflow/modules/archive/service/TaskArchive.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 50–105
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 63
CommentRequired Public method and constructor comments are required 3 79–85

fr/paris/lutece/plugins/workflow/modules/archive/web/ArchiveTaskComponent.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 66–236
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 111

fr/paris/lutece/plugins/workflow/modules/assignment/business/AssignmentHistory.java

Rule Violation Priority Ligne
ShortVariable Avoid variables with short names like id 3 62

fr/paris/lutece/plugins/workflow/modules/assignment/business/AssignmentHistoryDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 59–71

fr/paris/lutece/plugins/workflow/modules/assignment/business/TaskAssignmentConfigDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 59–75

fr/paris/lutece/plugins/workflow/modules/assignment/business/WorkgroupConfigDAO.java

Rule Violation Priority Ligne
ConfusingTernary Avoid if (x != y) ..; else ..; 3 133–140

fr/paris/lutece/plugins/workflow/modules/assignment/service/TaskAssignment.java

Rule Violation Priority Ligne
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 121–136
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 159
ShortVariable Avoid variables with short names like t 3 162

fr/paris/lutece/plugins/workflow/modules/assignment/web/AssignmentTaskComponent.java

Rule Violation Priority Ligne
NPathComplexity The method 'doSaveConfig(HttpServletRequest, Locale, ITask)' has an NPath complexity of 1152 3 115–205
CyclomaticComplexity The method 'doSaveConfig(HttpServletRequest, Locale, ITask)' has a cyclomatic complexity of 13. 3 115–205
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 119
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 121
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 172–192
ConfusingTernary Avoid if (x != y) ..; else ..; 3 180–188
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 213
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 214
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 279
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 295
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 329

fr/paris/lutece/plugins/workflow/modules/choice/business/ChoiceTaskConfigDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 57–69

fr/paris/lutece/plugins/workflow/modules/choice/web/ChoiceTaskComponent.java

Rule Violation Priority Ligne
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.service.message.AdminMessage' 4 47
UnusedImports Avoid unused imports such as 'fr.paris.lutece.portal.service.message.AdminMessageService' 4 48
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 82
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 94

fr/paris/lutece/plugins/workflow/modules/comment/business/CommentValue.java

Rule Violation Priority Ligne
ShortVariable Avoid variables with short names like id 3 66
ShortVariable Avoid variables with short names like sb 3 115

fr/paris/lutece/plugins/workflow/modules/comment/business/CommentValueDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 56–68

fr/paris/lutece/plugins/workflow/modules/comment/business/TaskCommentConfigDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 58–71

fr/paris/lutece/plugins/workflow/modules/comment/service/CommentResourceIdService.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 61–64
MissingOverride The method 'register()' is missing an @Override annotation. 3 69–83
ShortVariable Avoid variables with short names like rt 3 71
ShortVariable Avoid variables with short names like p 3 77
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 3 92–95
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 3 100–103

fr/paris/lutece/plugins/workflow/modules/comment/web/CommentJspBean.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–209
ImmutableField Private field '_commentValueService' could be made final; it is only initialized in the declaration or constructor. 3 96
ImmutableField Private field '_resourceHistoryService' could be made final; it is only initialized in the declaration or constructor. 3 97
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 3 98
ImmutableField Private field '_taskComponentManager' could be made final; it is only initialized in the declaration or constructor. 3 99

fr/paris/lutece/plugins/workflow/modules/comment/web/CommentTaskComponent.java

Rule Violation Priority Ligne
CommentRequired Public method and constructor comments are required 3 99–102
CommentRequired Public method and constructor comments are required 3 104–108
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 116
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 117
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 148
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 164
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 199

fr/paris/lutece/plugins/workflow/modules/confirmaction/business/ConfirmActionTaskConfigDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 57–69

fr/paris/lutece/plugins/workflow/modules/confirmaction/web/ConfirmActionTaskComponent.java

Rule Violation Priority Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 80
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 92

fr/paris/lutece/plugins/workflow/modules/duration/business/PrerequisiteDurationConfig.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–73
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _nDuration field if you want a default access modifier 3 46
DefaultPackage Use explicit scoping instead of the default package private level 3 46

fr/paris/lutece/plugins/workflow/modules/duration/business/PrerequisiteDurationConfigDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 42–111

fr/paris/lutece/plugins/workflow/modules/duration/service/PrerequisiteDuration.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 55–131
CommentRequired Public method and constructor comments are required 3 66–69
MissingOverride The method 'getPrerequisiteType()' is missing an @Override annotation. 3 66–69
MissingOverride The method 'getTitleI18nKey()' is missing an @Override annotation. 3 71–74
CommentRequired Public method and constructor comments are required 3 71–74
CommentRequired Public method and constructor comments are required 3 76–79
MissingOverride The method 'hasConfiguration()' is missing an @Override annotation. 3 76–79
CommentRequired Public method and constructor comments are required 3 81–84
MissingOverride The method 'getEmptyConfiguration()' is missing an @Override annotation. 3 81–84
CommentRequired Public method and constructor comments are required 3 86–89
MissingOverride The method 'getConfigurationDaoBeanName()' is missing an @Override annotation. 3 86–89
CommentRequired Public method and constructor comments are required 3 91–99
MissingOverride The method 'getConfigHtml(IPrerequisiteConfig, HttpServletRequest, Locale)' is missing an @Override annotation. 3 91–99
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 93

fr/paris/lutece/plugins/workflow/modules/notification/business/TaskNotificationConfigDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 59–73

fr/paris/lutece/plugins/workflow/modules/notification/service/TaskNotification.java

Rule Violation Priority Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 96
ShortVariable Avoid variables with short names like t 3 99

fr/paris/lutece/plugins/workflow/modules/notification/web/NotificationTaskComponent.java

Rule Violation Priority Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 80

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskConfig.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 41–64

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskConfigDao.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 39–106

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskInformation.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 36–93

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskInformationDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–96

fr/paris/lutece/plugins/workflow/modules/state/business/ChangeStateTaskInformationHome.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–89

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskConfig.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 41–104

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskConfigDao.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 39–114

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskInformation.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 36–93

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskInformationDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–96

fr/paris/lutece/plugins/workflow/modules/state/business/ChooseStateTaskInformationHome.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 38–89

fr/paris/lutece/plugins/workflow/modules/state/business/IChangeStateTaskInformationDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 36–67

fr/paris/lutece/plugins/workflow/modules/state/business/IChooseStateTaskInformationDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 36–67

fr/paris/lutece/plugins/workflow/modules/state/daemon/ChangeStateDaemon.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 62–133
ImmutableField Private field '_changeStateTaskService' could be made final; it is only initialized in the declaration or constructor. 3 65
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 3 66
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 3 67
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 3 68
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 3 69
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 112

fr/paris/lutece/plugins/workflow/modules/state/daemon/ChooseStateDaemon.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 62–133
ImmutableField Private field '_chooseStateTaskService' could be made final; it is only initialized in the declaration or constructor. 3 65
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 3 66
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 3 67
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 3 68
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 3 69
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 112

fr/paris/lutece/plugins/workflow/modules/state/service/AbstractStateTaskService.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 58–136
CommentRequired Public method and constructor comments are required 3 75–92
CommentRequired Public method and constructor comments are required 3 94–103
CommentRequired Public method and constructor comments are required 3 105–133
CommentRequired Protected method constructor comments are required 3 135

fr/paris/lutece/plugins/workflow/modules/state/service/ChangeStateTask.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 47–78

fr/paris/lutece/plugins/workflow/modules/state/service/ChangeStateTaskService.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 46–75

fr/paris/lutece/plugins/workflow/modules/state/service/ChooseStateTask.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 48–88

fr/paris/lutece/plugins/workflow/modules/state/service/IChangeStateTaskService.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 41–80

fr/paris/lutece/plugins/workflow/modules/state/service/IChooseStateController.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 43–119
UncommentedEmptyMethodBody Document empty method body 3 108–109
UncommentedEmptyMethodBody Document empty method body 3 117–118

fr/paris/lutece/plugins/workflow/modules/state/web/ChangeStateTaskComponent.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 52–94
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 70
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 82
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 82

fr/paris/lutece/plugins/workflow/modules/state/web/ChooseStateTaskComponent.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 53–122
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 77
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 110
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 110

fr/paris/lutece/plugins/workflow/service/ActionResourceIdService.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 73–76
ShortVariable Avoid variables with short names like rt 3 84
ShortVariable Avoid variables with short names like p 3 90
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 3 110–125
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 3 136–148
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 159
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 160
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 160
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 161
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 167
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 169
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 170

fr/paris/lutece/plugins/workflow/service/StateResourceIdService.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 72–75
ShortVariable Avoid variables with short names like rt 3 83
ShortVariable Avoid variables with short names like p 3 89
ConfusingTernary Avoid if (x != y) ..; else ..; 3 139

fr/paris/lutece/plugins/workflow/service/WorkflowGraphExportService.java

Rule Violation Priority Ligne
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 52–169
ShortVariable Avoid variables with short names like wf 3 74
CyclomaticComplexity The method 'generate(Workflow, String, boolean)' has a cyclomatic complexity of 19. 3 74–130
NPathComplexity The method 'generate(Workflow, String, boolean)' has an NPath complexity of 2550 3 74–130
ShortVariable Avoid variables with short names like sb 3 76
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 124
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 125
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 140
ShortVariable Avoid variables with short names like sb 3 140
ControlStatementBraces This statement should have braces 3 143
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 161
ShortVariable Avoid variables with short names like sb 3 161
UnusedLocalVariable Avoid unused local variables such as 'sb'. 3 161
ControlStatementBraces This statement should have braces 3 163

fr/paris/lutece/plugins/workflow/service/WorkflowProvider.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–645
AvoidReassigningParameters Avoid reassigning parameters such as 'listActions' 2 124
MissingOverride The method 'getActions(int, String, Collection, User)' is missing an @Override annotation. 3 124–129
MissingOverride The method 'getAuthorizedActions(Collection, User)' is missing an @Override annotation. 3 135–138
MissingOverride The method 'getActions(String, Map, User)' is missing an @Override annotation. 3 144–156
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 200
ConfusingTernary Avoid if (x != y) ..; else ..; 3 211–237
ConfusingTernary Avoid if (x != y) ..; else ..; 3 261–272
MissingOverride The method 'getDisplayDocumentHistory(int, String, int, HttpServletRequest, Locale, Map, String, User)' is missing an @Override annotation. 3 321–334
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 356
AvoidReassigningParameters Avoid reassigning parameters such as 'user' 2 378
MissingOverride The method 'canProcessAction(int, String, int, HttpServletRequest, User)' is missing an @Override annotation. 3 399–414
AvoidReassigningParameters Avoid reassigning parameters such as 'user' 2 399
CyclomaticComplexity The method 'isAuthorized(int, String, int, User)' has a cyclomatic complexity of 10. 3 420–470
ConfusingTernary Avoid if (x != y) ..; else ..; 3 426–443
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 536
ConfusingTernary Avoid if (x != y) ..; else ..; 3 548–555
ConfusingTernary Avoid if (x != y) ..; else ..; 3 591

fr/paris/lutece/plugins/workflow/service/json/TaskDeserializer.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 51–78
ShortVariable Avoid variables with short names like p 3 55
ShortVariable Avoid variables with short names like oc 3 57

fr/paris/lutece/plugins/workflow/service/json/TaskSerialiser.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 44–61

fr/paris/lutece/plugins/workflow/service/json/TimestampDeserializer.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 46–58
ImmutableField Private field '_fmt' could be made final; it is only initialized in the declaration or constructor. 3 48
ShortVariable Avoid variables with short names like dt 3 54

fr/paris/lutece/plugins/workflow/service/json/TimestampSerializer.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 46–59
ImmutableField Private field '_fmt' could be made final; it is only initialized in the declaration or constructor. 3 48
ShortVariable Avoid variables with short names like z 3 54

fr/paris/lutece/plugins/workflow/service/json/WorkflowJsonData.java

Rule Violation Priority Ligne
DataClass The class 'WorkflowJsonData' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=10, WMC=10) 3 45–142
CommentRequired Header comments are required 3 45–142

fr/paris/lutece/plugins/workflow/service/json/WorkflowJsonService.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–366
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 77–366
CommentRequired Header comments are required 3 77–366
TooManyMethods This class has too many methods, consider refactoring it. 3 78–366
ImmutableField Private field '_objectMapper' could be made final; it is only initialized in the declaration or constructor. 3 83
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 3 85
ImmutableField Private field '_stateService' could be made final; it is only initialized in the declaration or constructor. 3 86
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 3 87
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 3 88
ImmutableField Private field '_taskFactory' could be made final; it is only initialized in the declaration or constructor. 3 89
ImmutableField Private field '_prerequisiteManagementService' could be made final; it is only initialized in the declaration or constructor. 3 90
CommentRequired Public method and constructor comments are required 3 106–109
NPathComplexity The method 'jsonExportWorkflow(int)' has an NPath complexity of 768 3 117–199
CommentRequired Public method and constructor comments are required 3 202–217
CommentRequired Public method and constructor comments are required 3 219–232
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 236
LocalVariableNamingConventions The local variable name 'StateBefore' doesn't match '[a-z][a-zA-Z0-9]*' 1 268
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 268
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 279
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 351
LocalVariableNamingConventions The local variable name 'PrerequisiteTypeList' doesn't match '[a-z][a-zA-Z0-9]*' 1 351

fr/paris/lutece/plugins/workflow/service/prerequisite/AutomaticActionDaemon.java

Rule Violation Priority Ligne
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 77 characters appended. 3 107
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 108
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 108
ControlStatementBraces This statement should have braces 3 110

fr/paris/lutece/plugins/workflow/service/provider/MarkerProviderService.java

Rule Violation Priority Ligne
FieldNamingConventions The final field name '_listMarkerProviders' doesn't match '[a-z][a-zA-Z0-9]*' 1 53

fr/paris/lutece/plugins/workflow/service/provider/ProviderManagerUtil.java

Rule Violation Priority Ligne
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 73
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 132

fr/paris/lutece/plugins/workflow/service/task/TaskFactory.java

Rule Violation Priority Ligne
ShortVariable Avoid variables with short names like e 3 121

fr/paris/lutece/plugins/workflow/service/taskinfo/TaskInfoManager.java

Rule Violation Priority Ligne
ConfusingTernary Avoid if (x != y) ..; else ..; 3 138–145

fr/paris/lutece/plugins/workflow/utils/WorkflowCycleUtils.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 51–235
CommentRequired Header comments are required 3 51–235
LinguisticNaming Linguistics Antipattern - The method 'hasCycle' indicates linguistically it returns a boolean, but it returns 'ErrorMessage' 3 95–121
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 97
ControlStatementBraces This statement should have braces 3 220

fr/paris/lutece/plugins/workflow/utils/WorkflowUtils.java

Rule Violation Priority Ligne
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 145
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 194
AssignmentInOperand Avoid assignments in operands 3 194
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 276

fr/paris/lutece/plugins/workflow/web/IconJspBean.java

Rule Violation Priority Ligne
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 3 122
ImmutableField Private field '_iconService' could be made final; it is only initialized in the declaration or constructor. 3 125
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 3 126
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 137
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 216
ConfusingTernary Avoid if (x != y) ..; else ..; 3 255–262
NPathComplexity The method 'getIconData(HttpServletRequest, Icon)' has an NPath complexity of 784 3 337–406
CyclomaticComplexity The method 'getIconData(HttpServletRequest, Icon)' has a cyclomatic complexity of 18. 3 337–406
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 344
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 345
ConfusingTernary Avoid if (x != y) ..; else ..; 3 392–400

fr/paris/lutece/plugins/workflow/web/WorkflowDashboardComponent.java

Rule Violation Priority Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 109
ShortVariable Avoid variables with short names like t 3 116

fr/paris/lutece/plugins/workflow/web/WorkflowJspBean.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–3101
ExcessivePublicCount This class has a bunch of public methods and attributes 3 34–3101
TooManyFields Too many fields 3 132–3101
GodClass Possible God Class (WMC=336, ATFD=533, TCC=32.981%) 3 132–3101
CyclomaticComplexity The class 'WorkflowJspBean' has a total cyclomatic complexity of 336 (highest 16). 3 132–3101
ExcessiveClassLength Avoid really long classes. 3 132–3101
TooManyMethods This class has too many methods, consider refactoring it. 3 133–3101
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 3 305
RedundantFieldInitializer Avoid using redundant field initializer for '_bIsAscSort' 3 315
ImmutableField Private field '_workflowService' could be made final; it is only initialized in the declaration or constructor. 3 316
ImmutableField Private field '_stateService' could be made final; it is only initialized in the declaration or constructor. 3 317
ImmutableField Private field '_actionService' could be made final; it is only initialized in the declaration or constructor. 3 318
ImmutableField Private field '_iconService' could be made final; it is only initialized in the declaration or constructor. 3 319
ImmutableField Private field '_taskService' could be made final; it is only initialized in the declaration or constructor. 3 320
ImmutableField Private field '_taskFactory' could be made final; it is only initialized in the declaration or constructor. 3 321
ImmutableField Private field '_taskComponentManager' could be made final; it is only initialized in the declaration or constructor. 3 322
ImmutableField Private field '_prerequisiteManagementService' could be made final; it is only initialized in the declaration or constructor. 3 323
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 382
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 416
NcssCount The method 'getModifyWorkflow(HttpServletRequest)' has a NCSS line count of 77. 3 471–606
ExcessiveMethodLength Avoid really long methods. 3 471–606
NPathComplexity The method 'getModifyWorkflow(HttpServletRequest)' has an NPath complexity of 3456 3 471–606
CyclomaticComplexity The method 'getModifyWorkflow(HttpServletRequest)' has a cyclomatic complexity of 16. 3 471–606
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 473
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 475
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 476
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 568
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 582
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 635–638
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 642–645
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 649–652
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 698
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 769
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 808
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 864
CyclomaticComplexity The method 'doCreateState(HttpServletRequest)' has a cyclomatic complexity of 10. 3 885–944
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 977
CyclomaticComplexity The method 'doModifyState(HttpServletRequest)' has a cyclomatic complexity of 11. 3 998–1053
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1022
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1169
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1170
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1171
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1233
CyclomaticComplexity The method 'getActionData(HttpServletRequest, Action)' has a cyclomatic complexity of 15. 3 1325–1434
NcssCount The method 'getActionData(HttpServletRequest, Action)' has a NCSS line count of 66. 3 1325–1434
ExcessiveMethodLength Avoid really long methods. 3 1325–1434
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1337
CyclomaticComplexity The method 'getModifyAction(HttpServletRequest)' has a cyclomatic complexity of 10. 3 1445–1532
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1504
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1721
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1758
ShortVariable Avoid variables with short names like it 3 1995
CyclomaticComplexity The method 'doChangeOrderState(HttpServletRequest)' has a cyclomatic complexity of 10. 3 2144–2215
CyclomaticComplexity The method 'doChangeOrderAction(HttpServletRequest)' has a cyclomatic complexity of 10. 3 2224–2292
CyclomaticComplexity The method 'doChangeOrderTask(HttpServletRequest)' has a cyclomatic complexity of 11. 3 2301–2370
CommentRequired Public method and constructor comments are required 3 2672–2679
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 2861
CyclomaticComplexity The method 'doRemoveTaskFromReflexiveAction(HttpServletRequest)' has a cyclomatic complexity of 11. 3 2983–3021
ShortVariable Avoid variables with short names like os 3 3054
CommentRequired Public method and constructor comments are required 3 3068–3080
CommentRequired Public method and constructor comments are required 3 3082–3100
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 3097

fr/paris/lutece/plugins/workflow/web/prerequisite/PrerequisiteJspBean.java

Rule Violation Priority Ligne
ImmutableField Private field '_prerequisiteManagementService' could be made final; it is only initialized in the declaration or constructor. 3 88
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 129
ConfusingTernary Avoid if (x != y) ..; else ..; 3 137–147
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 193–203
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 262
ConfusingTernary Avoid if (x != y) ..; else ..; 3 270–280

fr/paris/lutece/plugins/workflow/web/task/NoConfigTaskComponent.java

Rule Violation Priority Ligne
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 1 65–68
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 1 74–77

fr/paris/lutece/plugins/workflow/web/task/NoFormTaskComponent.java

Rule Violation Priority Ligne
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 1 53–56
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 1 62–65