Fork me on GitHub

PMD Results

The following document contains the results of PMD 6.13.0.

Violations By Priority

Priority 1

fr/paris/lutece/plugins/myportal/service/PageConfigJsonUtil.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 118

fr/paris/lutece/plugins/myportal/util/auth/MyPortalAuthentication.java

Rule Violation Line
ReturnEmptyArrayRatherThanNull Return an empty array rather than null. 102105

Priority 3

fr/paris/lutece/plugins/myportal/business/CategoryDAO.java

Rule Violation Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 6178
MissingOverride The method 'insert(Category, Plugin)' is missing an @Override annotation. 8396
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 101122
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 127133
MissingOverride The method 'store(Category, Plugin)' is missing an @Override annotation. 138150
MissingOverride The method 'selectCategoriesList(Plugin)' is missing an @Override annotation. 155176
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 157
MissingOverride The method 'selectFirstCategory(Plugin)' is missing an @Override annotation. 181201

fr/paris/lutece/plugins/myportal/business/ColumnStyleDAO.java

Rule Violation Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 6481
MissingOverride The method 'insert(Style, Plugin)' is missing an @Override annotation. 91103
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 114134
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 144150
MissingOverride The method 'store(Style, Plugin)' is missing an @Override annotation. 160171
MissingOverride The method 'selectStylesList(Plugin)' is missing an @Override annotation. 180200
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 182

fr/paris/lutece/plugins/myportal/business/DefaultPageBuilderDAO.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 48439
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 7794
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 99108
MissingOverride The method 'deleteByColumnMax(int, Plugin)' is missing an @Override annotation. 113122
MissingOverride The method 'deleteAll(Plugin)' is missing an @Override annotation. 127134
MissingOverride The method 'insert(WidgetComponent, Plugin)' is missing an @Override annotation. 139149
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 154179
MissingOverride The method 'selectAllWidgetComponents(Plugin)' is missing an @Override annotation. 184208
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 190
MissingOverride The method 'selectMaxOrder(Plugin)' is missing an @Override annotation. 213229
MissingOverride The method 'selectMaxOrder(int, Plugin)' is missing an @Override annotation. 234252
MissingOverride The method 'selectWidgetComponents(WidgetComponentFilter, Plugin)' is missing an @Override annotation. 257287
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 269
MissingOverride The method 'store(WidgetComponent, Plugin)' is missing an @Override annotation. 292303
MissingOverride The method 'selectColumns(Plugin)' is missing an @Override annotation. 308324
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 310
MissingOverride The method 'selectWidgetIds(Plugin)' is missing an @Override annotation. 329345
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 331
LinguisticNaming Linguistics Antipattern - The setter 'setInsertOrUpdateValues' should not return any type except void linguistically 358366
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 378
ConfusingTernary Avoid if (x != y) ..; else ..; 400407

fr/paris/lutece/plugins/myportal/business/DefaultPageBuilderHome.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 49204

fr/paris/lutece/plugins/myportal/business/IDefaultPageBuilderDAO.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 46172

fr/paris/lutece/plugins/myportal/business/UserPageConfigDAO.java

Rule Violation Line
MissingOverride The method 'insert(UserPageConfig, Plugin)' is missing an @Override annotation. 6069
MissingOverride The method 'load(String, Plugin)' is missing an @Override annotation. 8099
MissingOverride The method 'delete(String, Plugin)' is missing an @Override annotation. 109115
MissingOverride The method 'store(UserPageConfig, Plugin)' is missing an @Override annotation. 125134

fr/paris/lutece/plugins/myportal/business/WidgetComponent.java

Rule Violation Line
ShortVariable Avoid variables with short names like o 163
MissingOverride The method 'compareTo(WidgetComponent)' is missing an @Override annotation. 163166

fr/paris/lutece/plugins/myportal/business/WidgetDAO.java

Rule Violation Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 86103
MissingOverride The method 'insert(Widget, Plugin)' is missing an @Override annotation. 113134
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 145177
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 187193
MissingOverride The method 'store(Widget, Plugin)' is missing an @Override annotation. 203224
MissingOverride The method 'selectWidgetsList(Plugin)' is missing an @Override annotation. 233265
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 236
MissingOverride The method 'getPublicMandatoryWidgets(Plugin)' is missing an @Override annotation. 270304
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 273
MissingOverride The method 'getWidgetsByFilter(WidgetFilter, Plugin)' is missing an @Override annotation. 309344
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 311
NPathComplexity The method 'buildSQLQuery(WidgetFilter)' has an NPath complexity of 256 353407
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 426
NPathComplexity The method 'setFilterValues(WidgetFilter, DAOUtil)' has an NPath complexity of 256 446497

fr/paris/lutece/plugins/myportal/business/WidgetStyleDAO.java

Rule Violation Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 6481
MissingOverride The method 'insert(Style, Plugin)' is missing an @Override annotation. 91103
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 114134
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 144150
MissingOverride The method 'store(Style, Plugin)' is missing an @Override annotation. 160171
MissingOverride The method 'selectStylesList(Plugin)' is missing an @Override annotation. 180200
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 182

fr/paris/lutece/plugins/myportal/business/WidgetsTag.java

Rule Violation Line
CommentRequired Header comments are required 345

fr/paris/lutece/plugins/myportal/business/icon/Icon.java

Rule Violation Line
MissingOverride The method 'getId()' is missing an @Override annotation. 5558
MissingOverride The method 'getName()' is missing an @Override annotation. 7679
MethodReturnsInternalArray Returning '_byValue' may expose an internal array. 99
ArrayIsStoredDirectly The user-supplied array 'value' is stored directly. 108

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

Rule Violation Line
CommentRequired Public method and constructor comments are required 94110
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 94110
MissingOverride The method 'insert(Icon, Plugin)' is missing an @Override annotation. 94110
CommentRequired Public method and constructor comments are required 118135
MissingOverride The method 'store(Icon, Plugin)' is missing an @Override annotation. 118135
MissingOverride The method 'storeMetadata(Icon, Plugin)' is missing an @Override annotation. 137152
CommentRequired Public method and constructor comments are required 137152
CommentRequired Public method and constructor comments are required 159185
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 159185
CommentRequired Public method and constructor comments are required 192199
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 192199
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 206233
CommentRequired Public method and constructor comments are required 206233
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 209
CommentRequired Public method and constructor comments are required 240268
MissingOverride The method 'selectIconFO(boolean, Plugin)' is missing an @Override annotation. 240268
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 243

fr/paris/lutece/plugins/myportal/business/parameter/PageBuilderParameterDAO.java

Rule Violation Line
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 5877
MissingOverride The method 'load(String, Plugin)' is missing an @Override annotation. 82100
MissingOverride The method 'store(ReferenceItem, Plugin)' is missing an @Override annotation. 105115
MissingOverride The method 'deleteAllColumnStyles(Plugin)' is missing an @Override annotation. 120126
MissingOverride The method 'insert(ReferenceItem, Plugin)' is missing an @Override annotation. 131140

fr/paris/lutece/plugins/myportal/service/CategoryService.java

Rule Violation Line
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 151

fr/paris/lutece/plugins/myportal/service/DefaultPageBuilderService.java

Rule Violation Line
GodClass Possible God Class (WMC=53, ATFD=23, TCC=7.018%) 59492
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listWidgetComponents' 120
ConfusingTernary Avoid if (x != y) ..; else ..; 145175
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 194
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 194
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 210
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 266
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 266
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 286
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 286
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 339
CyclomaticComplexity The method 'updateWidgetComponentColumns(List, WidgetComponent, int, int)' has a cyclomatic complexity of 11. 434469

fr/paris/lutece/plugins/myportal/service/IconService.java

Rule Violation Line
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the IconService constructor if you want a default access modifier 6062
UncommentedEmptyConstructor Document empty constructor 6062
MissingOverride The method 'getImageResource(int)' is missing an @Override annotation. 89104
MissingOverride The method 'getResourceTypeId()' is missing an @Override annotation. 111114

fr/paris/lutece/plugins/myportal/service/MyPortalPageService.java

Rule Violation Line
ImmutableField Private field '_pageBuilder' could be made final; it is only initialized in the declaration or constructor. 63
ImmutableField Private field '_defaultPageBuilderService' could be made final; it is only initialized in the declaration or constructor. 65
NonThreadSafeSingleton Singleton is not thread safe 8184
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 122
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 126

fr/paris/lutece/plugins/myportal/service/MyPortalResourceIdService.java

Rule Violation Line
CallSuperInConstructor It is a good practice to call super() in a constructor 6164
MissingOverride The method 'register()' is missing an @Override annotation. 6983
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. 9295
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 106109

fr/paris/lutece/plugins/myportal/service/PageBuilder.java

Rule Violation Line
MissingOverride The method 'buildPage(PageConfig, LuteceUser, HttpServletRequest)' is missing an @Override annotation. 115145
ShortVariable Avoid variables with short names like sb 117
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 118
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 118
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 162
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 162
ShortVariable Avoid variables with short names like sb 201
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 204
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 204
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 206
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 207
ConfusingTernary Avoid if (x != y) ..; else ..; 213221

fr/paris/lutece/plugins/myportal/service/PageConfigJsonUtil.java

Rule Violation Line
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 89
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 98
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the buildJson method if you want a default access modifier 131164
DefaultPackage Use explicit scoping instead of the default package private level 131164

fr/paris/lutece/plugins/myportal/service/StyleService.java

Rule Violation Line
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 6068

fr/paris/lutece/plugins/myportal/service/WidgetContentService.java

Rule Violation Line
ImmutableField Private field '_cacheWidgetContent' could be made final; it is only initialized in the declaration or constructor. 69
ConfusingTernary Avoid if (x != y) ..; else ..; 146
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 183
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 183

fr/paris/lutece/plugins/myportal/service/WidgetService.java

Rule Violation Line
UnusedPrivateField Avoid unused private fields such as 'COMMA'. 71
UnusedPrivateField Avoid unused private fields such as 'PROPERTY_ACCEPTED_ICON_FORMATS'. 76
ImmutableField Private field '_cacheWidget' could be made final; it is only initialized in the declaration or constructor. 86
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 280
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 387
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 387
UnusedPrivateMethod Avoid unused private methods such as 'getIconKey(int)'. 400
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 402
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 402
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 417
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 417
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 430
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 430
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 443
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 443

fr/paris/lutece/plugins/myportal/service/cache/WidgetCacheService.java

Rule Violation Line
CallSuperInConstructor It is a good practice to call super() in a constructor 4951
NonThreadSafeSingleton Singleton is not thread safe 6063
MissingOverride The method 'getName()' is missing an @Override annotation. 7174

fr/paris/lutece/plugins/myportal/service/cache/WidgetContentCacheService.java

Rule Violation Line
CallSuperInConstructor It is a good practice to call super() in a constructor 5052
NonThreadSafeSingleton Singleton is not thread safe 6164
MissingOverride The method 'getName()' is missing an @Override annotation. 7275

fr/paris/lutece/plugins/myportal/service/handler/HtmlWidgetHandler.java

Rule Violation Line
MissingOverride The method 'renderWidget(Widget, LuteceUser, HttpServletRequest)' is missing an @Override annotation. 5457
MissingOverride The method 'getName()' is missing an @Override annotation. 6265
MissingOverride The method 'getDescription()' is missing an @Override annotation. 7073
MissingOverride The method 'isCustomizable()' is missing an @Override annotation. 7881

fr/paris/lutece/plugins/myportal/service/handler/WidgetHandlerService.java

Rule Violation Line
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 6372

fr/paris/lutece/plugins/myportal/util/auth/MyPortalAuthentication.java

Rule Violation Line
MissingOverride The method 'getAuthServiceName()' is missing an @Override annotation. 5558
MissingOverride The method 'getAuthType(HttpServletRequest)' is missing an @Override annotation. 6366
MissingOverride The method 'login(String, String, HttpServletRequest)' is missing an @Override annotation. 7174
MissingOverride The method 'logout(LuteceUser)' is missing an @Override annotation. 7981
ShortVariable Avoid variables with short names like lu 79
UncommentedEmptyMethodBody Document empty method body 8081
MissingOverride The method 'getAnonymousUser()' is missing an @Override annotation. 8689
MissingOverride The method 'isUserInRole(LuteceUser, HttpServletRequest, String)' is missing an @Override annotation. 9497
ShortVariable Avoid variables with short names like lu 94
MissingOverride The method 'getRolesByUser(LuteceUser)' is missing an @Override annotation. 102105
ShortVariable Avoid variables with short names like lu 102
MissingOverride The method 'isExternalAuthentication()' is missing an @Override annotation. 110113
MissingOverride The method 'isDelegatedAuthentication()' is missing an @Override annotation. 118121
MissingOverride The method 'getHttpAuthenticatedUser(HttpServletRequest)' is missing an @Override annotation. 126129
MissingOverride The method 'getLoginPageUrl()' is missing an @Override annotation. 134137
MissingOverride The method 'getDoLoginUrl()' is missing an @Override annotation. 142145
MissingOverride The method 'getDoLogoutUrl()' is missing an @Override annotation. 150153
MissingOverride The method 'getNewAccountPageUrl()' is missing an @Override annotation. 158161
MissingOverride The method 'getViewAccountPageUrl()' is missing an @Override annotation. 166169
MissingOverride The method 'getLostPasswordPageUrl()' is missing an @Override annotation. 174177
MissingOverride The method 'getAccessDeniedTemplate()' is missing an @Override annotation. 182185
MissingOverride The method 'getAccessControledTemplate()' is missing an @Override annotation. 190193
MissingOverride The method 'isUsersListAvailable()' is missing an @Override annotation. 198201
MissingOverride The method 'getUsers()' is missing an @Override annotation. 206209
MissingOverride The method 'getUser(String)' is missing an @Override annotation. 214217
MissingOverride The method 'isMultiAuthenticationSupported()' is missing an @Override annotation. 222225
MissingOverride The method 'getIconUrl()' is missing an @Override annotation. 230233
MissingOverride The method 'getName()' is missing an @Override annotation. 238241
MissingOverride The method 'getPluginName()' is missing an @Override annotation. 246249
UncommentedEmptyMethodBody Document empty method body 287288

fr/paris/lutece/plugins/myportal/web/CategoryJspBean.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 62332
ImmutableField Private field '_categoryService' could be made final; it is only initialized in the declaration or constructor. 102
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 105
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 130
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 130
AddEmptyString Do not add empty strings 132
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 152
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 152
ConfusingTernary Avoid if (x != y) ..; else ..; 234241
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 270
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 270
ConfusingTernary Avoid if (x != y) ..; else ..; 307318

fr/paris/lutece/plugins/myportal/web/DefaultPageBuilderJspBean.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34477
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 76477
ImmutableField Private field '_service' could be made final; it is only initialized in the declaration or constructor. 124
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 125
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 142
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 142
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 180
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 180
CyclomaticComplexity The method 'doMoveWidgetComponent(HttpServletRequest)' has a cyclomatic complexity of 10. 235294
CyclomaticComplexity The method 'doModifyWidgetParameterDefaultValues(HttpServletRequest)' has a cyclomatic complexity of 12. 355413
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 442
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 442

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

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 66420
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 113
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 126
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 126
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 206
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 206
ConfusingTernary Avoid if (x != y) ..; else ..; 246253
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 271
UnusedLocalVariable Avoid unused local variables such as 'nIdIcon'. 271
NPathComplexity The method 'getIconData(HttpServletRequest, Icon)' has an NPath complexity of 2352 308381
CyclomaticComplexity The method 'getIconData(HttpServletRequest, Icon)' has a cyclomatic complexity of 20. 308381
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 314
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 316
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 317
ConfusingTernary Avoid if (x != y) ..; else ..; 367375

fr/paris/lutece/plugins/myportal/web/MyPortalAdminDashboardComponent.java

Rule Violation Line
ImmutableField Private field '_defaultPageBuilderService' could be made final; it is only initialized in the declaration or constructor. 62

fr/paris/lutece/plugins/myportal/web/MyPortalApp.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34798
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 75798
ImmutableField Private field '_pageService' could be made final; it is only initialized in the declaration or constructor. 148
ImmutableField Private field '_widgetService' could be made final; it is only initialized in the declaration or constructor. 149
ImmutableField Private field '_categoryService' could be made final; it is only initialized in the declaration or constructor. 151
ImmutableField Private field '_defaultPageBuilderService' could be made final; it is only initialized in the declaration or constructor. 152
MissingOverride The method 'getPage(HttpServletRequest, int, Plugin)' is missing an @Override annotation. 167208
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 200
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 200
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 233
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 233
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 290
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 290
ConfusingTernary Avoid if (x != y) ..; else ..; 328335
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 334
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 356
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 356
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 497
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 497
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 540
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 540
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 592
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 592
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 647
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 647
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 688
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 688
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 739
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 772
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 772

fr/paris/lutece/plugins/myportal/web/WidgetJspBean.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 67411
UnusedPrivateField Avoid unused private fields such as 'PARAMETER_WIDGET_ICON'. 81
UnusedPrivateField Avoid unused private fields such as 'PROPERTY_ACCEPTED_ICON_FORMATS'. 99
UnusedPrivateField Avoid unused private fields such as 'MESSAGE_ERROR_ICON_FORMAT_NOT_CORRECT'. 122
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 125
ImmutableField Private field '_widgetService' could be made final; it is only initialized in the declaration or constructor. 128
ImmutableField Private field '_categoryService' could be made final; it is only initialized in the declaration or constructor. 130
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 153
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 153
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 175
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 175
CyclomaticComplexity The method 'doCreateWidget(HttpServletRequest)' has a cyclomatic complexity of 12. 196242
ConfusingTernary Avoid if (x != y) ..; else ..; 318337
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 320
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 320
CyclomaticComplexity The method 'doModifyWidget(HttpServletRequest)' has a cyclomatic complexity of 15. 354410
ConfusingTernary Avoid if (x != y) ..; else ..; 375402
UnusedLocalVariable Avoid unused local variables such as 'bUpdateIcon'. 382

Priority 4

fr/paris/lutece/plugins/myportal/business/Widget.java

Rule Violation Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 331334
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 352355

fr/paris/lutece/plugins/myportal/business/WidgetFilter.java

Rule Violation Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 99102

fr/paris/lutece/plugins/myportal/business/icon/Icon.java

Rule Violation Line
ShortClassName Avoid short class names like Icon 41185
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 180183

Files

fr/paris/lutece/plugins/myportal/business/CategoryDAO.java

Rule Violation Priority Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 3 6178
MissingOverride The method 'insert(Category, Plugin)' is missing an @Override annotation. 3 8396
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 101122
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 127133
MissingOverride The method 'store(Category, Plugin)' is missing an @Override annotation. 3 138150
MissingOverride The method 'selectCategoriesList(Plugin)' is missing an @Override annotation. 3 155176
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 157
MissingOverride The method 'selectFirstCategory(Plugin)' is missing an @Override annotation. 3 181201

fr/paris/lutece/plugins/myportal/business/ColumnStyleDAO.java

Rule Violation Priority Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 3 6481
MissingOverride The method 'insert(Style, Plugin)' is missing an @Override annotation. 3 91103
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 114134
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 144150
MissingOverride The method 'store(Style, Plugin)' is missing an @Override annotation. 3 160171
MissingOverride The method 'selectStylesList(Plugin)' is missing an @Override annotation. 3 180200
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 182

fr/paris/lutece/plugins/myportal/business/DefaultPageBuilderDAO.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 48439
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 3 7794
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 99108
MissingOverride The method 'deleteByColumnMax(int, Plugin)' is missing an @Override annotation. 3 113122
MissingOverride The method 'deleteAll(Plugin)' is missing an @Override annotation. 3 127134
MissingOverride The method 'insert(WidgetComponent, Plugin)' is missing an @Override annotation. 3 139149
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 154179
MissingOverride The method 'selectAllWidgetComponents(Plugin)' is missing an @Override annotation. 3 184208
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 190
MissingOverride The method 'selectMaxOrder(Plugin)' is missing an @Override annotation. 3 213229
MissingOverride The method 'selectMaxOrder(int, Plugin)' is missing an @Override annotation. 3 234252
MissingOverride The method 'selectWidgetComponents(WidgetComponentFilter, Plugin)' is missing an @Override annotation. 3 257287
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 269
MissingOverride The method 'store(WidgetComponent, Plugin)' is missing an @Override annotation. 3 292303
MissingOverride The method 'selectColumns(Plugin)' is missing an @Override annotation. 3 308324
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 310
MissingOverride The method 'selectWidgetIds(Plugin)' is missing an @Override annotation. 3 329345
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 331
LinguisticNaming Linguistics Antipattern - The setter 'setInsertOrUpdateValues' should not return any type except void linguistically 3 358366
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 378
ConfusingTernary Avoid if (x != y) ..; else ..; 3 400407

fr/paris/lutece/plugins/myportal/business/DefaultPageBuilderHome.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 49204

fr/paris/lutece/plugins/myportal/business/IDefaultPageBuilderDAO.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 46172

fr/paris/lutece/plugins/myportal/business/UserPageConfigDAO.java

Rule Violation Priority Line
MissingOverride The method 'insert(UserPageConfig, Plugin)' is missing an @Override annotation. 3 6069
MissingOverride The method 'load(String, Plugin)' is missing an @Override annotation. 3 8099
MissingOverride The method 'delete(String, Plugin)' is missing an @Override annotation. 3 109115
MissingOverride The method 'store(UserPageConfig, Plugin)' is missing an @Override annotation. 3 125134

fr/paris/lutece/plugins/myportal/business/Widget.java

Rule Violation Priority Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 331334
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 352355

fr/paris/lutece/plugins/myportal/business/WidgetComponent.java

Rule Violation Priority Line
ShortVariable Avoid variables with short names like o 3 163
MissingOverride The method 'compareTo(WidgetComponent)' is missing an @Override annotation. 3 163166

fr/paris/lutece/plugins/myportal/business/WidgetDAO.java

Rule Violation Priority Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 3 86103
MissingOverride The method 'insert(Widget, Plugin)' is missing an @Override annotation. 3 113134
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 145177
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 187193
MissingOverride The method 'store(Widget, Plugin)' is missing an @Override annotation. 3 203224
MissingOverride The method 'selectWidgetsList(Plugin)' is missing an @Override annotation. 3 233265
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 236
MissingOverride The method 'getPublicMandatoryWidgets(Plugin)' is missing an @Override annotation. 3 270304
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 273
MissingOverride The method 'getWidgetsByFilter(WidgetFilter, Plugin)' is missing an @Override annotation. 3 309344
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 311
NPathComplexity The method 'buildSQLQuery(WidgetFilter)' has an NPath complexity of 256 3 353407
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 426
NPathComplexity The method 'setFilterValues(WidgetFilter, DAOUtil)' has an NPath complexity of 256 3 446497

fr/paris/lutece/plugins/myportal/business/WidgetFilter.java

Rule Violation Priority Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 99102

fr/paris/lutece/plugins/myportal/business/WidgetStyleDAO.java

Rule Violation Priority Line
MissingOverride The method 'newPrimaryKey(Plugin)' is missing an @Override annotation. 3 6481
MissingOverride The method 'insert(Style, Plugin)' is missing an @Override annotation. 3 91103
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 114134
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 144150
MissingOverride The method 'store(Style, Plugin)' is missing an @Override annotation. 3 160171
MissingOverride The method 'selectStylesList(Plugin)' is missing an @Override annotation. 3 180200
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 182

fr/paris/lutece/plugins/myportal/business/WidgetsTag.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 345

fr/paris/lutece/plugins/myportal/business/icon/Icon.java

Rule Violation Priority Line
ShortClassName Avoid short class names like Icon 4 41185
MissingOverride The method 'getId()' is missing an @Override annotation. 3 5558
MissingOverride The method 'getName()' is missing an @Override annotation. 3 7679
MethodReturnsInternalArray Returning '_byValue' may expose an internal array. 3 99
ArrayIsStoredDirectly The user-supplied array 'value' is stored directly. 3 108
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 180183

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

Rule Violation Priority Line
CommentRequired Public method and constructor comments are required 3 94110
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 94110
MissingOverride The method 'insert(Icon, Plugin)' is missing an @Override annotation. 3 94110
CommentRequired Public method and constructor comments are required 3 118135
MissingOverride The method 'store(Icon, Plugin)' is missing an @Override annotation. 3 118135
MissingOverride The method 'storeMetadata(Icon, Plugin)' is missing an @Override annotation. 3 137152
CommentRequired Public method and constructor comments are required 3 137152
CommentRequired Public method and constructor comments are required 3 159185
MissingOverride The method 'load(int, Plugin)' is missing an @Override annotation. 3 159185
CommentRequired Public method and constructor comments are required 3 192199
MissingOverride The method 'delete(int, Plugin)' is missing an @Override annotation. 3 192199
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 3 206233
CommentRequired Public method and constructor comments are required 3 206233
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 209
CommentRequired Public method and constructor comments are required 3 240268
MissingOverride The method 'selectIconFO(boolean, Plugin)' is missing an @Override annotation. 3 240268
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 243

fr/paris/lutece/plugins/myportal/business/parameter/PageBuilderParameterDAO.java

Rule Violation Priority Line
MissingOverride The method 'selectAll(Plugin)' is missing an @Override annotation. 3 5877
MissingOverride The method 'load(String, Plugin)' is missing an @Override annotation. 3 82100
MissingOverride The method 'store(ReferenceItem, Plugin)' is missing an @Override annotation. 3 105115
MissingOverride The method 'deleteAllColumnStyles(Plugin)' is missing an @Override annotation. 3 120126
MissingOverride The method 'insert(ReferenceItem, Plugin)' is missing an @Override annotation. 3 131140

fr/paris/lutece/plugins/myportal/service/CategoryService.java

Rule Violation Priority Line
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 151

fr/paris/lutece/plugins/myportal/service/DefaultPageBuilderService.java

Rule Violation Priority Line
GodClass Possible God Class (WMC=53, ATFD=23, TCC=7.018%) 3 59492
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listWidgetComponents' 3 120
ConfusingTernary Avoid if (x != y) ..; else ..; 3 145175
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 194
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 194
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 210
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 266
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 266
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 286
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 286
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 339
CyclomaticComplexity The method 'updateWidgetComponentColumns(List, WidgetComponent, int, int)' has a cyclomatic complexity of 11. 3 434469

fr/paris/lutece/plugins/myportal/service/IconService.java

Rule Violation Priority Line
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the IconService constructor if you want a default access modifier 3 6062
UncommentedEmptyConstructor Document empty constructor 3 6062
MissingOverride The method 'getImageResource(int)' is missing an @Override annotation. 3 89104
MissingOverride The method 'getResourceTypeId()' is missing an @Override annotation. 3 111114

fr/paris/lutece/plugins/myportal/service/MyPortalPageService.java

Rule Violation Priority Line
ImmutableField Private field '_pageBuilder' could be made final; it is only initialized in the declaration or constructor. 3 63
ImmutableField Private field '_defaultPageBuilderService' could be made final; it is only initialized in the declaration or constructor. 3 65
NonThreadSafeSingleton Singleton is not thread safe 3 8184
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 122
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 126

fr/paris/lutece/plugins/myportal/service/MyPortalResourceIdService.java

Rule Violation Priority Line
CallSuperInConstructor It is a good practice to call super() in a constructor 3 6164
MissingOverride The method 'register()' is missing an @Override annotation. 3 6983
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 9295
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 3 106109

fr/paris/lutece/plugins/myportal/service/PageBuilder.java

Rule Violation Priority Line
MissingOverride The method 'buildPage(PageConfig, LuteceUser, HttpServletRequest)' is missing an @Override annotation. 3 115145
ShortVariable Avoid variables with short names like sb 3 117
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 118
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 118
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 162
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 162
ShortVariable Avoid variables with short names like sb 3 201
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 204
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 204
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 206
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 207
ConfusingTernary Avoid if (x != y) ..; else ..; 3 213221

fr/paris/lutece/plugins/myportal/service/PageConfigJsonUtil.java

Rule Violation Priority Line
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 89
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 98
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 118
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the buildJson method if you want a default access modifier 3 131164
DefaultPackage Use explicit scoping instead of the default package private level 3 131164

fr/paris/lutece/plugins/myportal/service/StyleService.java

Rule Violation Priority Line
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 6068

fr/paris/lutece/plugins/myportal/service/WidgetContentService.java

Rule Violation Priority Line
ImmutableField Private field '_cacheWidgetContent' could be made final; it is only initialized in the declaration or constructor. 3 69
ConfusingTernary Avoid if (x != y) ..; else ..; 3 146
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 183
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 183

fr/paris/lutece/plugins/myportal/service/WidgetService.java

Rule Violation Priority Line
UnusedPrivateField Avoid unused private fields such as 'COMMA'. 3 71
UnusedPrivateField Avoid unused private fields such as 'PROPERTY_ACCEPTED_ICON_FORMATS'. 3 76
ImmutableField Private field '_cacheWidget' could be made final; it is only initialized in the declaration or constructor. 3 86
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 280
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 387
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 387
UnusedPrivateMethod Avoid unused private methods such as 'getIconKey(int)'. 3 400
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 402
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 402
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 417
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 417
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 430
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 430
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 443
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 443

fr/paris/lutece/plugins/myportal/service/cache/WidgetCacheService.java

Rule Violation Priority Line
CallSuperInConstructor It is a good practice to call super() in a constructor 3 4951
NonThreadSafeSingleton Singleton is not thread safe 3 6063
MissingOverride The method 'getName()' is missing an @Override annotation. 3 7174

fr/paris/lutece/plugins/myportal/service/cache/WidgetContentCacheService.java

Rule Violation Priority Line
CallSuperInConstructor It is a good practice to call super() in a constructor 3 5052
NonThreadSafeSingleton Singleton is not thread safe 3 6164
MissingOverride The method 'getName()' is missing an @Override annotation. 3 7275

fr/paris/lutece/plugins/myportal/service/handler/HtmlWidgetHandler.java

Rule Violation Priority Line
MissingOverride The method 'renderWidget(Widget, LuteceUser, HttpServletRequest)' is missing an @Override annotation. 3 5457
MissingOverride The method 'getName()' is missing an @Override annotation. 3 6265
MissingOverride The method 'getDescription()' is missing an @Override annotation. 3 7073
MissingOverride The method 'isCustomizable()' is missing an @Override annotation. 3 7881

fr/paris/lutece/plugins/myportal/service/handler/WidgetHandlerService.java

Rule Violation Priority Line
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 6372

fr/paris/lutece/plugins/myportal/util/auth/MyPortalAuthentication.java

Rule Violation Priority Line
MissingOverride The method 'getAuthServiceName()' is missing an @Override annotation. 3 5558
MissingOverride The method 'getAuthType(HttpServletRequest)' is missing an @Override annotation. 3 6366
MissingOverride The method 'login(String, String, HttpServletRequest)' is missing an @Override annotation. 3 7174
MissingOverride The method 'logout(LuteceUser)' is missing an @Override annotation. 3 7981
ShortVariable Avoid variables with short names like lu 3 79
UncommentedEmptyMethodBody Document empty method body 3 8081
MissingOverride The method 'getAnonymousUser()' is missing an @Override annotation. 3 8689
MissingOverride The method 'isUserInRole(LuteceUser, HttpServletRequest, String)' is missing an @Override annotation. 3 9497
ShortVariable Avoid variables with short names like lu 3 94
MissingOverride The method 'getRolesByUser(LuteceUser)' is missing an @Override annotation. 3 102105
ReturnEmptyArrayRatherThanNull Return an empty array rather than null. 1 102105
ShortVariable Avoid variables with short names like lu 3 102
MissingOverride The method 'isExternalAuthentication()' is missing an @Override annotation. 3 110113
MissingOverride The method 'isDelegatedAuthentication()' is missing an @Override annotation. 3 118121
MissingOverride The method 'getHttpAuthenticatedUser(HttpServletRequest)' is missing an @Override annotation. 3 126129
MissingOverride The method 'getLoginPageUrl()' is missing an @Override annotation. 3 134137
MissingOverride The method 'getDoLoginUrl()' is missing an @Override annotation. 3 142145
MissingOverride The method 'getDoLogoutUrl()' is missing an @Override annotation. 3 150153
MissingOverride The method 'getNewAccountPageUrl()' is missing an @Override annotation. 3 158161
MissingOverride The method 'getViewAccountPageUrl()' is missing an @Override annotation. 3 166169
MissingOverride The method 'getLostPasswordPageUrl()' is missing an @Override annotation. 3 174177
MissingOverride The method 'getAccessDeniedTemplate()' is missing an @Override annotation. 3 182185
MissingOverride The method 'getAccessControledTemplate()' is missing an @Override annotation. 3 190193
MissingOverride The method 'isUsersListAvailable()' is missing an @Override annotation. 3 198201
MissingOverride The method 'getUsers()' is missing an @Override annotation. 3 206209
MissingOverride The method 'getUser(String)' is missing an @Override annotation. 3 214217
MissingOverride The method 'isMultiAuthenticationSupported()' is missing an @Override annotation. 3 222225
MissingOverride The method 'getIconUrl()' is missing an @Override annotation. 3 230233
MissingOverride The method 'getName()' is missing an @Override annotation. 3 238241
MissingOverride The method 'getPluginName()' is missing an @Override annotation. 3 246249
UncommentedEmptyMethodBody Document empty method body 3 287288

fr/paris/lutece/plugins/myportal/web/CategoryJspBean.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 62332
ImmutableField Private field '_categoryService' could be made final; it is only initialized in the declaration or constructor. 3 102
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 3 105
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 130
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 130
AddEmptyString Do not add empty strings 3 132
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 152
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 152
ConfusingTernary Avoid if (x != y) ..; else ..; 3 234241
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 270
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 270
ConfusingTernary Avoid if (x != y) ..; else ..; 3 307318

fr/paris/lutece/plugins/myportal/web/DefaultPageBuilderJspBean.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34477
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 76477
ImmutableField Private field '_service' could be made final; it is only initialized in the declaration or constructor. 3 124
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 3 125
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 142
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 142
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 180
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 180
CyclomaticComplexity The method 'doMoveWidgetComponent(HttpServletRequest)' has a cyclomatic complexity of 10. 3 235294
CyclomaticComplexity The method 'doModifyWidgetParameterDefaultValues(HttpServletRequest)' has a cyclomatic complexity of 12. 3 355413
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 442
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 442

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

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 66420
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 3 113
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 126
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 126
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 206
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 206
ConfusingTernary Avoid if (x != y) ..; else ..; 3 246253
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 271
UnusedLocalVariable Avoid unused local variables such as 'nIdIcon'. 3 271
NPathComplexity The method 'getIconData(HttpServletRequest, Icon)' has an NPath complexity of 2352 3 308381
CyclomaticComplexity The method 'getIconData(HttpServletRequest, Icon)' has a cyclomatic complexity of 20. 3 308381
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 314
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 316
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 317
ConfusingTernary Avoid if (x != y) ..; else ..; 3 367375

fr/paris/lutece/plugins/myportal/web/MyPortalAdminDashboardComponent.java

Rule Violation Priority Line
ImmutableField Private field '_defaultPageBuilderService' could be made final; it is only initialized in the declaration or constructor. 3 62

fr/paris/lutece/plugins/myportal/web/MyPortalApp.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34798
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 75798
ImmutableField Private field '_pageService' could be made final; it is only initialized in the declaration or constructor. 3 148
ImmutableField Private field '_widgetService' could be made final; it is only initialized in the declaration or constructor. 3 149
ImmutableField Private field '_categoryService' could be made final; it is only initialized in the declaration or constructor. 3 151
ImmutableField Private field '_defaultPageBuilderService' could be made final; it is only initialized in the declaration or constructor. 3 152
MissingOverride The method 'getPage(HttpServletRequest, int, Plugin)' is missing an @Override annotation. 3 167208
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 200
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 200
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 233
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 233
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 290
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 290
ConfusingTernary Avoid if (x != y) ..; else ..; 3 328335
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 334
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 356
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 356
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 497
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 497
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 540
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 540
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 592
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 592
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 647
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 647
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 688
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 688
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 739
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 772
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 772

fr/paris/lutece/plugins/myportal/web/WidgetJspBean.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 67411
UnusedPrivateField Avoid unused private fields such as 'PARAMETER_WIDGET_ICON'. 3 81
UnusedPrivateField Avoid unused private fields such as 'PROPERTY_ACCEPTED_ICON_FORMATS'. 3 99
UnusedPrivateField Avoid unused private fields such as 'MESSAGE_ERROR_ICON_FORMAT_NOT_CORRECT'. 3 122
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 3 125
ImmutableField Private field '_widgetService' could be made final; it is only initialized in the declaration or constructor. 3 128
ImmutableField Private field '_categoryService' could be made final; it is only initialized in the declaration or constructor. 3 130
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 153
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 153
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 175
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 175
CyclomaticComplexity The method 'doCreateWidget(HttpServletRequest)' has a cyclomatic complexity of 12. 3 196242
ConfusingTernary Avoid if (x != y) ..; else ..; 3 318337
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 320
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 320
CyclomaticComplexity The method 'doModifyWidget(HttpServletRequest)' has a cyclomatic complexity of 15. 3 354410
ConfusingTernary Avoid if (x != y) ..; else ..; 3 375402
UnusedLocalVariable Avoid unused local variables such as 'bUpdateIcon'. 3 382