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/document/business/attributes/MapProviderManager.java

Rule Violation Ligne
ClassNamingConventions The utility class name 'MapProviderManager' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 53100

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationHome.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 46187

fr/paris/lutece/plugins/document/service/AttributeService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 48115

fr/paris/lutece/plugins/document/service/DocumentService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 94814

fr/paris/lutece/plugins/document/service/DocumentTools.java

Rule Violation Ligne
ClassNamingConventions The utility class name 'DocumentTools' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 47111

fr/paris/lutece/plugins/document/service/DocumentTypeService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 45111

fr/paris/lutece/plugins/document/service/attributes/DefaultManager.java

Rule Violation Ligne
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 343346
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 378381

fr/paris/lutece/plugins/document/service/attributes/DocumentAttributesService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 46121

fr/paris/lutece/plugins/document/service/docsearch/DocSearchItem.java

Rule Violation Ligne
ConstructorCallsOverridableMethod Overridable method 'setId' called during object construction 65
ConstructorCallsOverridableMethod Overridable method 'setTitle' called during object construction 66
ConstructorCallsOverridableMethod Overridable method 'setSummary' called during object construction 67
ConstructorCallsOverridableMethod Overridable method 'setDate' called during object construction 68
ConstructorCallsOverridableMethod Overridable method 'setType' called during object construction 69

fr/paris/lutece/plugins/document/service/docsearch/DocSearchService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 94624

fr/paris/lutece/plugins/document/service/history/DocumentHistoryService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 49128

fr/paris/lutece/plugins/document/service/publishing/PublishingService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 63462

fr/paris/lutece/plugins/document/service/rules/RuleEngine.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 4893

fr/paris/lutece/plugins/document/service/spaces/DocumentSpacesService.java

Rule Violation Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 71612
LocalVariableNamingConventions The local variable name '_template' doesn't match '[a-z][a-zA-Z0-9]*' 525

fr/paris/lutece/plugins/document/web/DocumentResourceServlet.java

Rule Violation Ligne
FieldNamingConventions The constant name '_cache' doesn't match '[A-Z][A-Z_0-9]*' 75

fr/paris/lutece/plugins/document/web/publishing/DocumentPublishingJspBean.java

Rule Violation Ligne
FieldNamingConventions The constant name 'MARk_DOCUMENT_LIST_PORTLET_LIST' doesn't match '[A-Z][A-Z_0-9]*' 147

fr/paris/lutece/plugins/document/web/rules/DocumentRulesJspBean.java

Rule Violation Ligne
FieldNamingConventions The field name '_StrRuleAttributeSelected' doesn't match '_[a-z][a-zA-Z0-9]*' 92

Priority 2

fr/paris/lutece/plugins/document/business/DocumentDAO.java

Rule Violation Ligne
GuardLogStatement Logger calls should be surrounded by log level guards. 823
GuardLogStatement Logger calls should be surrounded by log level guards. 831
GuardLogStatement Logger calls should be surrounded by log level guards. 838
GuardLogStatement Logger calls should be surrounded by log level guards. 845
GuardLogStatement Logger calls should be surrounded by log level guards. 856
GuardLogStatement Logger calls should be surrounded by log level guards. 867

fr/paris/lutece/plugins/document/service/DocumentContentService.java

Rule Violation Ligne
GuardLogStatement Logger calls should be surrounded by log level guards. 202203
GuardLogStatement Logger calls should be surrounded by log level guards. 219
GuardLogStatement Logger calls should be surrounded by log level guards. 225
AvoidReassigningParameters Avoid reassigning parameters such as 'strPortletId' 264
ProperCloneImplementation Object clone() should be implemented with super.clone() 765

fr/paris/lutece/plugins/document/service/attributes/DefaultManager.java

Rule Violation Ligne
AvoidReassigningParameters Avoid reassigning parameters such as 'model' 211
AvoidReassigningParameters Avoid reassigning parameters such as 'model' 249

Priority 3

fr/paris/lutece/plugins/document/business/Document.java

Rule Violation Ligne
ExcessivePublicCount This class has a bunch of public methods and attributes 34905
TooManyFields Too many fields 61905
GodClass Possible God Class (WMC=73, ATFD=8, TCC=2.191%) 61905
UnusedPrivateField Avoid unused private fields such as 'CONSTANT_QUESTION_MARK'. 79
UnusedPrivateField Avoid unused private fields such as 'CONSTANT_EQUALS'. 80
ConfusingTernary Avoid if (x != y) ..; else ..; 203
ConfusingTernary Avoid if (x != y) ..; else ..; 329
ConfusingTernary Avoid if (x != y) ..; else ..; 695703
ShortVariable Avoid variables with short names like gc 794
LogicInversion Use opposite operator instead of the logic complement operator. 835

fr/paris/lutece/plugins/document/business/DocumentDAO.java

Rule Violation Ligne
ExcessiveClassLength Avoid really long classes. 521288
CyclomaticComplexity The class 'DocumentDAO' has a total cyclomatic complexity of 96 (highest 33). 521288
GodClass Possible God Class (WMC=96, ATFD=317, TCC=0.430%) 521288
TooManyMethods This class has too many methods, consider refactoring it. 531288
AvoidDuplicateLiterals The String literal " a.date_modification, a.xml_working_content, a.xml_validated_content, a.id_space , b.document_space_name , " appears 4 times in this file; the first occurrence is on line 57 57
AvoidDuplicateLiterals The String literal " INNER JOIN document_type d ON a.code_document_type = d.code_document_type " appears 5 times in this file; the first occurrence is on line 77 77
MissingOverride The method 'newPrimaryKey()' is missing an @Override annotation. 158175
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 183210
MissingOverride The method 'insert(Document)' is missing an @Override annotation. 183210
MissingOverride The method 'load(int)' is missing an @Override annotation. 270273
MissingOverride The method 'loadWithoutBinaries(int)' is missing an @Override annotation. 282285
MissingOverride The method 'loadFromSpaceId(int)' is missing an @Override annotation. 364393
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 370
MissingOverride The method 'loadAttributes(Document)' is missing an @Override annotation. 401444
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 403
MissingOverride The method 'loadAttributesWithoutBinaries(Document, boolean)' is missing an @Override annotation. 454497
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 456
MissingOverride The method 'delete(int)' is missing an @Override annotation. 505519
MissingOverride The method 'validateAttributes(int)' is missing an @Override annotation. 559569
MissingOverride The method 'store(Document, boolean)' is missing an @Override annotation. 594628
MissingOverride The method 'selectPrimaryKeysByFilter(DocumentFilter)' is missing an @Override annotation. 637651
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 639
MissingOverride The method 'selectByFilter(DocumentFilter)' is missing an @Override annotation. 660716
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 662
NcssCount The method 'getDaoFromFilter(String, DocumentFilter)' has a NCSS line count of 73. 727873
CyclomaticComplexity The method 'getDaoFromFilter(String, DocumentFilter)' has a cyclomatic complexity of 33. 727873
ExcessiveMethodLength Avoid really long methods. 727873
NPathComplexity The method 'getDaoFromFilter(String, DocumentFilter)' has an NPath complexity of 6386688 727873
ConfusingTernary Avoid if (x != y) ..; else ..; 735
ConfusingTernary Avoid if (x != y) ..; else ..; 740
ShortVariable Avoid variables with short names like i 747
ConfusingTernary Avoid if (x != y) ..; else ..; 769
ConfusingTernary Avoid if (x != y) ..; else ..; 787
ConfusingTernary Avoid if (x != y) ..; else ..; 792
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 798
ConfusingTernary Avoid if (x != y) ..; else ..; 798
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 799
ConfusingTernary Avoid if (x != y) ..; else ..; 805
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 805
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 811
ConfusingTernary Avoid if (x != y) ..; else ..; 811
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 819
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 822
AvoidDuplicateLiterals The String literal "Param" appears 5 times in this file; the first occurrence is on line 831 831
MissingOverride The method 'selectByRelatedCategories(Document)' is missing an @Override annotation. 882932
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 884
MissingOverride The method 'loadResource(int)' is missing an @Override annotation. 941960
MissingOverride The method 'loadSpecificResource(int, int, boolean)' is missing an @Override annotation. 973994
MissingOverride The method 'selectAllPrimaryKeys()' is missing an @Override annotation. 10011017
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1003
MissingOverride The method 'selectAll()' is missing an @Override annotation. 10251067
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1027
MissingOverride The method 'getPageTemplateDocumentPath(int)' is missing an @Override annotation. 10761092
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1104
MissingOverride The method 'loadLastModifiedAttributes(int)' is missing an @Override annotation. 11761194
MissingOverride The method 'loadLastModifiedDocumentFromUser(String)' is missing an @Override annotation. 12031242
MissingOverride The method 'loadLastPublishedDocument()' is missing an @Override annotation. 12491287

fr/paris/lutece/plugins/document/business/DocumentFilter.java

Rule Violation Ligne
MethodReturnsInternalArray Returning '_arrayCategoriesId' may expose an internal array. 155
ArrayIsStoredDirectly The user-supplied array 'arrayCategoriesId' is stored directly. 162
MethodReturnsInternalArray Returning '_arrayId' may expose an internal array. 192
ArrayIsStoredDirectly The user-supplied array 'arrayId' is stored directly. 199

fr/paris/lutece/plugins/document/business/DocumentHome.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 49349

fr/paris/lutece/plugins/document/business/DocumentPageTemplateDAO.java

Rule Violation Ligne
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the newPrimaryKey method if you want a default access modifier 6381
DefaultPackage Use explicit scoping instead of the default package private level 6381
MissingOverride The method 'insert(DocumentPageTemplate)' is missing an @Override annotation. 89102
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 89102
MissingOverride The method 'load(int)' is missing an @Override annotation. 111131
MissingOverride The method 'delete(int)' is missing an @Override annotation. 139145
MissingOverride The method 'store(DocumentPageTemplate)' is missing an @Override annotation. 153165
MissingOverride The method 'selectPageTemplatesList()' is missing an @Override annotation. 172192
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 174

fr/paris/lutece/plugins/document/business/DocumentResource.java

Rule Violation Ligne
MethodReturnsInternalArray Returning '_strContent' may expose an internal array. 53
ArrayIsStoredDirectly The user-supplied array 'strContent' is stored directly. 62

fr/paris/lutece/plugins/document/business/DocumentType.java

Rule Violation Ligne
ImmutableField Private field '_listAttributes' could be made final; it is only initialized in the declaration or constructor. 83
LooseCoupling Avoid using implementation types like 'ArrayList'; use the interface instead 83
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 83
MethodReturnsInternalArray Returning '_baAdminXsl' may expose an internal array. 179
ArrayIsStoredDirectly The user-supplied array 'baXsl' is stored directly. 188
MethodReturnsInternalArray Returning '_baContentServiceXsl' may expose an internal array. 200
ArrayIsStoredDirectly The user-supplied array 'baXsl' is stored directly. 209
ConfusingTernary Avoid if (x != y) ..; else ..; 263
MissingOverride The method 'getResourceTypeCode()' is missing an @Override annotation. 282285
MissingOverride The method 'getResourceId()' is missing an @Override annotation. 292295
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 304
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 304
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 319
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 319
ConfusingTernary Avoid if (x != y) ..; else ..; 336344

fr/paris/lutece/plugins/document/business/DocumentTypeDAO.java

Rule Violation Ligne
MissingOverride The method 'insert(DocumentType)' is missing an @Override annotation. 6577
MissingOverride The method 'load(String)' is missing an @Override annotation. 86111
MissingOverride The method 'delete(String)' is missing an @Override annotation. 119126
MissingOverride The method 'store(DocumentType)' is missing an @Override annotation. 134147
MissingOverride The method 'selectDocumentTypeList()' is missing an @Override annotation. 154176
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 156
MissingOverride The method 'getDocumentTypeList()' is missing an @Override annotation. 183200
MissingOverride The method 'checkDocuments(String)' is missing an @Override annotation. 208218
MissingOverride The method 'reorderAttributes(int, int, int, int)' is missing an @Override annotation. 231241
MissingOverride The method 'setAdminStyleSheet(byte, String)' is missing an @Override annotation. 251259
MissingOverride The method 'setContentStyleSheet(byte, String)' is missing an @Override annotation. 269277

fr/paris/lutece/plugins/document/business/IDocumentDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 43225

fr/paris/lutece/plugins/document/business/IndexerActionDAO.java

Rule Violation Ligne
CommentRequired Public method and constructor comments are required 6380
MissingOverride The method 'newPrimaryKey()' is missing an @Override annotation. 6380
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 8799
MissingOverride The method 'insert(IndexerAction)' is missing an @Override annotation. 8799
CommentRequired Public method and constructor comments are required 8799
CommentRequired Public method and constructor comments are required 106125
MissingOverride The method 'load(int)' is missing an @Override annotation. 106125
MissingOverride The method 'delete(int)' is missing an @Override annotation. 132138
CommentRequired Public method and constructor comments are required 132138
MissingOverride The method 'deleteAll()' is missing an @Override annotation. 145150
CommentRequired Public method and constructor comments are required 145150
MissingOverride The method 'store(IndexerAction)' is missing an @Override annotation. 157168
CommentRequired Public method and constructor comments are required 157168
MissingOverride The method 'selectList(IndexerActionFilter)' is missing an @Override annotation. 175213
CommentRequired Public method and constructor comments are required 175213
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 177
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 179
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 235
AssignmentInOperand Avoid assignments in operands 235

fr/paris/lutece/plugins/document/business/attributes/AttributeType.java

Rule Violation Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 9093

fr/paris/lutece/plugins/document/business/attributes/AttributeTypeDAO.java

Rule Violation Ligne
MissingOverride The method 'insert(AttributeType)' is missing an @Override annotation. 6474
MissingOverride The method 'load(int)' is missing an @Override annotation. 83103
MissingOverride The method 'delete(AttributeType)' is missing an @Override annotation. 111118
MissingOverride The method 'store(AttributeType)' is missing an @Override annotation. 126137
MissingOverride The method 'selectDocumentAttributeTypeList()' is missing an @Override annotation. 144164
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 146
MissingOverride The method 'selectAttributeTypeList(Locale)' is missing an @Override annotation. 173191
MissingOverride The method 'getAttributeManagersList()' is missing an @Override annotation. 201215
MissingOverride The method 'selectAttributeTypeParameterList(String)' is missing an @Override annotation. 227258
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 229
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 230
PositionLiteralsFirstInComparisons Position literals first in String comparisons 244

fr/paris/lutece/plugins/document/business/attributes/AttributeTypeParameter.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 52
ImmutableField Private field '_listDefaultValue' could be made final; it is only initialized in the declaration or constructor. 52
ImmutableField Private field '_listValues' could be made final; it is only initialized in the declaration or constructor. 53
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 53
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 8285
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 158
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 191

fr/paris/lutece/plugins/document/business/attributes/DocumentAttribute.java

Rule Violation Ligne
ArrayIsStoredDirectly The user-supplied array 'bytes' is stored directly. 318
MethodReturnsInternalArray Returning '_bytes' may expose an internal array. 330

fr/paris/lutece/plugins/document/business/attributes/DocumentAttributeDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 47453
MissingOverride The method 'insert(DocumentAttribute)' is missing an @Override annotation. 105123
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 105123
MissingOverride The method 'load(int)' is missing an @Override annotation. 132156
MissingOverride The method 'delete(int)' is missing an @Override annotation. 164173
MissingOverride The method 'store(DocumentAttribute)' is missing an @Override annotation. 214234
MissingOverride The method 'selectAttributesByDocumentType(DocumentType)' is missing an @Override annotation. 242268
MissingOverride The method 'selectAllAttributesOfDocumentType(String)' is missing an @Override annotation. 277302
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 279
ShortVariable Avoid variables with short names like i 311
MissingOverride The method 'selectAttributeParametersValues(int)' is missing an @Override annotation. 334352
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 336
MissingOverride The method 'getAttributeParameterValues(int, String)' is missing an @Override annotation. 363379
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 365
MissingOverride The method 'insertRegularExpression(int, int)' is missing an @Override annotation. 389396
MissingOverride The method 'deleteRegularExpression(int, int)' is missing an @Override annotation. 406413
MissingOverride The method 'selectListRegularExpressionKeyByIdAttribute(int)' is missing an @Override annotation. 436452
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 438

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublication.java

Rule Violation Ligne
NonThreadSafeSingleton Singleton is not thread safe 5458

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationDAO.java

Rule Violation Ligne
MissingOverride The method 'delete(int, int)' is missing an @Override annotation. 6774
MissingOverride The method 'deleteAllSpaces(int)' is missing an @Override annotation. 8288
MissingOverride The method 'insert(DocumentAutoPublication)' is missing an @Override annotation. 96104
MissingOverride The method 'load(int, int)' is missing an @Override annotation. 115134
MissingOverride The method 'load()' is missing an @Override annotation. 141159
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 146
MissingOverride The method 'selectByPortletId(int)' is missing an @Override annotation. 168187
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 174
MissingOverride The method 'selectBySpaceId(int)' is missing an @Override annotation. 196215
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 202
MissingOverride The method 'store(DocumentAutoPublication)' is missing an @Override annotation. 223233

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationDocumentSpaceRemovalListener.java

Rule Violation Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 5777
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 8892

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationHome.java

Rule Violation Ligne
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 163166
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 180183

fr/paris/lutece/plugins/document/business/category/Category.java

Rule Violation Ligne
MethodReturnsInternalArray Returning '_byteIconContent' may expose an internal array. 57
ArrayIsStoredDirectly The user-supplied array 'byteIconContent' is stored directly. 64
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 141144

fr/paris/lutece/plugins/document/business/category/CategoryDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 46361
MissingOverride The method 'selectAll()' is missing an @Override annotation. 7196
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 74
MissingOverride The method 'insert(Category)' is missing an @Override annotation. 104118
MissingOverride The method 'load(int)' is missing an @Override annotation. 148172
MissingOverride The method 'delete(int)' is missing an @Override annotation. 180187
MissingOverride The method 'store(Category)' is missing an @Override annotation. 195208
MissingOverride The method 'selectByName(String)' is missing an @Override annotation. 217243
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 220
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 272
ShortVariable Avoid variables with short names like i 286
MissingOverride The method 'selectCountIdDocuments(int)' is missing an @Override annotation. 318333
MissingOverride The method 'loadImageResource(int)' is missing an @Override annotation. 342360

fr/paris/lutece/plugins/document/business/category/CategoryHome.java

Rule Violation Ligne
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'categoryList' 65

fr/paris/lutece/plugins/document/business/history/HistoryEvent.java

Rule Violation Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 192195

fr/paris/lutece/plugins/document/business/history/HistoryEventDAO.java

Rule Violation Ligne
MissingOverride The method 'insert(HistoryEvent)' is missing an @Override annotation. 5971
MissingOverride The method 'delete(int)' is missing an @Override annotation. 7986
MissingOverride The method 'selectEventListByDocument(int)' is missing an @Override annotation. 95118
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 97
MissingOverride The method 'selectEventListByUser(String)' is missing an @Override annotation. 127150
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 129

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortlet.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 6366
MissingOverride The method 'getXml(HttpServletRequest)' is missing an @Override annotation. 7593
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'str' 92
MissingOverride The method 'getXmlDocument(HttpServletRequest)' is missing an @Override annotation. 102105
MissingOverride The method 'remove()' is missing an @Override annotation. 118121
MethodReturnsInternalArray Returning '_nArrayIdCategory' may expose an internal array. 170
ArrayIsStoredDirectly The user-supplied array 'arrayIdCategory' is stored directly. 177

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortletDAO.java

Rule Violation Ligne
MissingOverride The method 'insert(Portlet)' is missing an @Override annotation. 7890
ShortVariable Avoid variables with short names like p 80
ShortVariable Avoid variables with short names like p 100
MissingOverride The method 'delete(int)' is missing an @Override annotation. 124138
MissingOverride The method 'load(int)' is missing an @Override annotation. 175194
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 208
ShortVariable Avoid variables with short names like i 218
MissingOverride The method 'store(Portlet)' is missing an @Override annotation. 234248
ShortVariable Avoid variables with short names like p 236
MissingOverride The method 'selectByDocumentIdAndDocumentType(int, String, PortletOrder, PortletFilter)' is missing an @Override annotation. 261319
CyclomaticComplexity The method 'selectByDocumentIdAndDocumentType(int, String, PortletOrder, PortletFilter)' has a cyclomatic complexity of 10. 261319
ConfusingTernary Avoid if (x != y) ..; else ..; 267
MissingOverride The method 'checkIsAliasPortlet(int)' is missing an @Override annotation. 328344

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortletHome.java

Rule Violation Ligne
RedundantFieldInitializer Avoid using redundant field initializer for '_singleton' 55
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 55
CallSuperInConstructor It is a good practice to call super() in a constructor 6066
NonThreadSafeSingleton Singleton is not thread safe 7578
MissingOverride The method 'getPortletTypeId()' is missing an @Override annotation. 8894
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'strPortletTypeId' 93
MissingOverride The method 'getDAO()' is missing an @Override annotation. 101104

fr/paris/lutece/plugins/document/business/portlet/DocumentPortlet.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 6770
MissingOverride The method 'getXml(HttpServletRequest)' is missing an @Override annotation. 7996
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'str' 95
MissingOverride The method 'getXmlDocument(HttpServletRequest)' is missing an @Override annotation. 105108
MissingOverride The method 'remove()' is missing an @Override annotation. 121124
MethodReturnsInternalArray Returning '_nArrayIdCategory' may expose an internal array. 173
ArrayIsStoredDirectly The user-supplied array 'arrayIdCategory' is stored directly. 180

fr/paris/lutece/plugins/document/business/portlet/DocumentPortletDAO.java

Rule Violation Ligne
CommentRequired Header comments are required 45365
TooManyMethods This class has too many methods, consider refactoring it. 46365
MissingOverride The method 'insert(Portlet)' is missing an @Override annotation. 7789
ShortVariable Avoid variables with short names like p 79
ShortVariable Avoid variables with short names like p 99
MissingOverride The method 'delete(int)' is missing an @Override annotation. 123137
MissingOverride The method 'load(int)' is missing an @Override annotation. 174193
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 207
ShortVariable Avoid variables with short names like i 217
MissingOverride The method 'store(Portlet)' is missing an @Override annotation. 233247
ShortVariable Avoid variables with short names like p 235
CyclomaticComplexity The method 'selectByDocumentOdAndDocumentType(int, String, PortletOrder, PortletFilter)' has a cyclomatic complexity of 10. 260317
MissingOverride The method 'selectByDocumentOdAndDocumentType(int, String, PortletOrder, PortletFilter)' is missing an @Override annotation. 260317
ConfusingTernary Avoid if (x != y) ..; else ..; 266
MissingOverride The method 'checkIsAliasPortlet(int)' is missing an @Override annotation. 326342
MissingOverride The method 'selectPortletsByDocumentId(int)' is missing an @Override annotation. 348364
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 354

fr/paris/lutece/plugins/document/business/portlet/DocumentPortletHome.java

Rule Violation Ligne
CommentRequired Header comments are required 45147
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 53
RedundantFieldInitializer Avoid using redundant field initializer for '_singleton' 53
CallSuperInConstructor It is a good practice to call super() in a constructor 5864
NonThreadSafeSingleton Singleton is not thread safe 7376
MissingOverride The method 'getPortletTypeId()' is missing an @Override annotation. 8692
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'strPortletTypeId' 91
MissingOverride The method 'getDAO()' is missing an @Override annotation. 99102

fr/paris/lutece/plugins/document/business/portlet/IDocumentListPortletDAO.java

Rule Violation Ligne
MissingOverride The method 'delete(int)' is missing an @Override annotation. 62
MissingOverride The method 'insert(Portlet)' is missing an @Override annotation. 71
MissingOverride The method 'load(int)' is missing an @Override annotation. 81
MissingOverride The method 'store(Portlet)' is missing an @Override annotation. 105

fr/paris/lutece/plugins/document/business/portlet/PortletFilter.java

Rule Violation Ligne
ArrayIsStoredDirectly The user-supplied array 'strPageTitle' is stored directly. 68
MethodReturnsInternalArray Returning '_tabPageName' may expose an internal array. 80
ArrayIsStoredDirectly The user-supplied array 'strPortletTitle' is stored directly. 89
MethodReturnsInternalArray Returning '_tabPortletName' may expose an internal array. 101
CyclomaticComplexity The method 'getSQLFilter()' has a cyclomatic complexity of 13. 172221

fr/paris/lutece/plugins/document/business/publication/DocumentPublicationDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 48397
MissingOverride The method 'insert(DocumentPublication)' is missing an @Override annotation. 6981
MissingOverride The method 'store(DocumentPublication)' is missing an @Override annotation. 89100
MissingOverride The method 'delete(int, int)' is missing an @Override annotation. 110117
MissingOverride The method 'deleteFromPortletId(int)' is missing an @Override annotation. 125131
MissingOverride The method 'deleteFromDocumentId(int)' is missing an @Override annotation. 139145
MissingOverride The method 'select(int, int)' is missing an @Override annotation. 159180
MissingOverride The method 'selectByPortletId(int)' is missing an @Override annotation. 189210
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 191
MissingOverride The method 'selectByDocumentId(int)' is missing an @Override annotation. 219240
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 221
MissingOverride The method 'selectByPortletIdAndStatus(int, int)' is missing an @Override annotation. 251273
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 253
MissingOverride The method 'selectByDocumentIdAndStatus(int, int)' is missing an @Override annotation. 284306
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 286
MissingOverride The method 'selectSinceDatePublishingAndStatus(Date, int)' is missing an @Override annotation. 317339
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 319
MissingOverride The method 'selectMaxDocumentOrder(int)' is missing an @Override annotation. 348363
MissingOverride The method 'selectDocumentIdByOrder(int, int)' is missing an @Override annotation. 374396
ConfusingTernary Avoid if (x != y) ..; else ..; 383391

fr/paris/lutece/plugins/document/business/publication/DocumentPublicationHome.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. 46205
TooManyMethods This class has too many methods, consider refactoring it. 46205

fr/paris/lutece/plugins/document/business/publication/IDocumentPublicationDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 45169

fr/paris/lutece/plugins/document/business/rules/AbstractRule.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 54
ImmutableField Private field '_mapAttributes' could be made final; it is only initialized in the declaration or constructor. 54
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 54
MissingOverride The method 'getId()' is missing an @Override annotation. 6366
MissingOverride The method 'setId(int)' is missing an @Override annotation. 7477
MissingOverride The method 'getRuleTypeId()' is missing an @Override annotation. 8487
MissingOverride The method 'setRuleTypeId(String)' is missing an @Override annotation. 9598
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 106109
MissingOverride The method 'setAttribute(String, String)' is missing an @Override annotation. 129132
MissingOverride The method 'getAttribute(String)' is missing an @Override annotation. 141144
MissingOverride The method 'readAttributes(HttpServletRequest)' is missing an @Override annotation. 152168
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 159167
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 174
MissingOverride The method 'getUser()' is missing an @Override annotation. 181184
MissingOverride The method 'setUser(AdminUser)' is missing an @Override annotation. 193196

fr/paris/lutece/plugins/document/business/rules/RuleDAO.java

Rule Violation Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 88100
MissingOverride The method 'insert(Rule)' is missing an @Override annotation. 88100
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 112122
MissingOverride The method 'load(int, IRuleTypesSet)' is missing an @Override annotation. 134153
MissingOverride The method 'delete(int)' is missing an @Override annotation. 181190
MissingOverride The method 'store(Rule)' is missing an @Override annotation. 213218
MissingOverride The method 'selectRuleList(IRuleTypesSet)' is missing an @Override annotation. 227243
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 229
MissingOverride The method 'selectRuleListByRuleTypeKey(String, IRuleTypesSet)' is missing an @Override annotation. 254273
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 256

fr/paris/lutece/plugins/document/business/rules/RuleTypesSet.java

Rule Violation Ligne
MissingOverride The method 'setRuleTypesMap(Map)' is missing an @Override annotation. 5760
MissingOverride The method 'newInstance(String)' is missing an @Override annotation. 6988
IdenticalCatchBranches 'catch' branch identical to 'InstantiationException' branch 8285
MissingOverride The method 'getRuleTypeKey(Rule)' is missing an @Override annotation. 95121
IdenticalCatchBranches 'catch' branch identical to 'InstantiationException' branch 114117
MissingOverride The method 'getRuleTypesList(Locale)' is missing an @Override annotation. 128139
MissingOverride The method 'getRuleTypes()' is missing an @Override annotation. 146149

fr/paris/lutece/plugins/document/business/spaces/DocumentSpace.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 56
LooseCoupling Avoid using implementation types like 'ArrayList'; use the interface instead 56
ImmutableField Private field '_listDocumentType' could be made final; it is only initialized in the declaration or constructor. 56
MissingOverride The method 'getResourceTypeCode()' is missing an @Override annotation. 275278
MissingOverride The method 'getResourceId()' is missing an @Override annotation. 285288
AddEmptyString Do not add empty strings 287
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 294297

fr/paris/lutece/plugins/document/business/spaces/DocumentSpaceDAO.java

Rule Violation Ligne
TooManyMethods This class has too many methods, consider refactoring it. 48477
MissingOverride The method 'insert(DocumentSpace)' is missing an @Override annotation. 108125
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 108125
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 137145
MissingOverride The method 'load(int)' is missing an @Override annotation. 155185
MissingOverride The method 'delete(int)' is missing an @Override annotation. 213221
MissingOverride The method 'store(DocumentSpace)' is missing an @Override annotation. 244262
MissingOverride The method 'selectChilds(int, String)' is missing an @Override annotation. 273310
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 275
ConfusingTernary Avoid if (x != y) ..; else ..; 278288
MissingOverride The method 'selectSpacesAllowingDocumentCreationByDocumentType(String, int)' is missing an @Override annotation. 319348
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 321
MissingOverride The method 'getDocumentSpaceList()' is missing an @Override annotation. 355373
MissingOverride The method 'getViewTypeList(Locale)' is missing an @Override annotation. 382398
MissingOverride The method 'getIconsList()' is missing an @Override annotation. 405421
MissingOverride The method 'selectAll()' is missing an @Override annotation. 428452
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 430
MissingOverride The method 'getAllowedDocumentTypes(int)' is missing an @Override annotation. 461476

fr/paris/lutece/plugins/document/business/spaces/SpaceAction.java

Rule Violation Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 6164
MissingOverride The method 'getPermission()' is missing an @Override annotation. 175178

fr/paris/lutece/plugins/document/business/spaces/SpaceActionDAO.java

Rule Violation Ligne
MissingOverride The method 'selectActions()' is missing an @Override annotation. 5475
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 56

fr/paris/lutece/plugins/document/business/workflow/DocumentAction.java

Rule Violation Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 112115
MissingOverride The method 'getPermission()' is missing an @Override annotation. 226229

fr/paris/lutece/plugins/document/business/workflow/DocumentActionDAO.java

Rule Violation Ligne
MissingOverride The method 'load(int)' is missing an @Override annotation. 5989
MissingOverride The method 'selectActions(Document)' is missing an @Override annotation. 98121
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 100

fr/paris/lutece/plugins/document/business/workflow/DocumentStateDAO.java

Rule Violation Ligne
MissingOverride The method 'load(int)' is missing an @Override annotation. 5776
MissingOverride The method 'selectDocumentStatesList(Locale)' is missing an @Override annotation. 85103

fr/paris/lutece/plugins/document/business/workflow/DocumentStateHome.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. 4572

fr/paris/lutece/plugins/document/modules/metadatadublincore/DublinCoreMetadataHandler.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 81
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 81
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 99
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 99

fr/paris/lutece/plugins/document/modules/metadatadublincore/business/DublinCoreMetadata.java

Rule Violation Ligne
CyclomaticComplexity The class 'DublinCoreMetadata' has a total cyclomatic complexity of 82 (highest 31). 55506
CyclomaticComplexity The constructor 'DublinCoreMetadata()' has a cyclomatic complexity of 16. 94111
NPathComplexity The constructor 'DublinCoreMetadata()' has an NPath complexity of 32768 94111
ConfusingTernary Avoid if (x != y) ..; else ..; 96
ConfusingTernary Avoid if (x != y) ..; else ..; 97
ConfusingTernary Avoid if (x != y) ..; else ..; 98
ConfusingTernary Avoid if (x != y) ..; else ..; 99
ConfusingTernary Avoid if (x != y) ..; else ..; 100
ConfusingTernary Avoid if (x != y) ..; else ..; 101
ConfusingTernary Avoid if (x != y) ..; else ..; 102
ConfusingTernary Avoid if (x != y) ..; else ..; 103
ConfusingTernary Avoid if (x != y) ..; else ..; 104
ConfusingTernary Avoid if (x != y) ..; else ..; 105
ConfusingTernary Avoid if (x != y) ..; else ..; 106
ConfusingTernary Avoid if (x != y) ..; else ..; 107
ConfusingTernary Avoid if (x != y) ..; else ..; 108
ConfusingTernary Avoid if (x != y) ..; else ..; 109
ConfusingTernary Avoid if (x != y) ..; else ..; 110
NPathComplexity The method 'getXml()' has an NPath complexity of 14348907 387470
CyclomaticComplexity The method 'getXml()' has a cyclomatic complexity of 31. 387470
ShortVariable Avoid variables with short names like sr 489
IdenticalCatchBranches 'catch' branch identical to 'FileNotFoundException' branch 497500
IdenticalCatchBranches 'catch' branch identical to 'FileNotFoundException' branch 501504

fr/paris/lutece/plugins/document/modules/rulemovespace/business/MoveSpaceRule.java

Rule Violation Ligne
MissingOverride The method 'init()' is missing an @Override annotation. 8795
MissingOverride The method 'getNameKey()' is missing an @Override annotation. 101104
MissingOverride The method 'apply(DocumentEvent)' is missing an @Override annotation. 111133
CollapsibleIfStatements These nested if statements could be combined 121125
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 128
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 131
MissingOverride The method 'getCreateForm(AdminUser, Locale)' is missing an @Override annotation. 141196
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 143
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 143
MissingOverride The method 'isAuthorized(AdminUser)' is missing an @Override annotation. 203219
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 206
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 213216
MissingOverride The method 'validateRule()' is missing an @Override annotation. 226250
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 229
MissingOverride The method 'getAttributesList()' is missing an @Override annotation. 256259
MethodReturnsInternalArray Returning '_attributes' may expose an internal array. 258
MissingOverride The method 'getRule()' is missing an @Override annotation. 265285
CyclomaticComplexity The method 'equals(Object)' has a cyclomatic complexity of 12. 315346
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 315

fr/paris/lutece/plugins/document/modules/rulemovespace/business/MoveSpaceSpaceRemovalListener.java

Rule Violation Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 5888
ShortVariable Avoid variables with short names like id 96
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 96100

fr/paris/lutece/plugins/document/modules/rulenotifyusers/business/NotifyUsersMailingListRemovalListener.java

Rule Violation Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 5887
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 9599
ShortVariable Avoid variables with short names like id 95

fr/paris/lutece/plugins/document/modules/rulenotifyusers/business/NotifyUsersRule.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34474
MissingOverride The method 'init()' is missing an @Override annotation. 127141
MissingOverride The method 'getNameKey()' is missing an @Override annotation. 147150
MissingOverride The method 'apply(DocumentEvent)' is missing an @Override annotation. 157203
CollapsibleIfStatements These nested if statements could be combined 169196
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 176
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 176
ShortVariable Avoid variables with short names like t 185
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 199
MissingOverride The method 'getCreateForm(AdminUser, Locale)' is missing an @Override annotation. 211263
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 213
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 213
MissingOverride The method 'validateRule()' is missing an @Override annotation. 270286
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 272
MissingOverride The method 'isAuthorized(AdminUser)' is missing an @Override annotation. 293303
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 297300
MissingOverride The method 'getAttributesList()' is missing an @Override annotation. 309312
MethodReturnsInternalArray Returning '_attributes' may expose an internal array. 311
MissingOverride The method 'getRule()' is missing an @Override annotation. 318350
CyclomaticComplexity The method 'equals(Object)' has a cyclomatic complexity of 15. 439473
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 439

fr/paris/lutece/plugins/document/modules/rulenotifyusers/business/NotifyUsersSpaceRemovalListener.java

Rule Violation Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 5886
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 9498
ShortVariable Avoid variables with short names like id 94

fr/paris/lutece/plugins/document/service/AttributeService.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 51
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 51
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 6271
IdenticalCatchBranches 'catch' branch identical to 'IllegalAccessException' branch 9598
IdenticalCatchBranches 'catch' branch identical to 'IllegalAccessException' branch 99102

fr/paris/lutece/plugins/document/service/DocumentContentService.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34788
GodClass Possible God Class (WMC=71, ATFD=89, TCC=12.281%) 102788
TooManyMethods This class has too many methods, consider refactoring it. 103788
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 148
MissingOverride The method 'getPage(HttpServletRequest, int)' is missing an @Override annotation. 170229
PositionLiteralsFirstInCaseInsensitiveComparisons Position literals first in String comparisons for EqualsIgnoreCase 240
NcssCount The method 'buildPage(HttpServletRequest, String, String, String, int)' has a NCSS line count of 73. 264412
CyclomaticComplexity The method 'buildPage(HttpServletRequest, String, String, String, int)' has a cyclomatic complexity of 18. 264412
ExcessiveMethodLength Avoid really long methods. 264412
NPathComplexity The method 'buildPage(HttpServletRequest, String, String, String, int)' has an NPath complexity of 3900 264412
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 269
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 270
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 270
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 270
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 293
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 293
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 338
ReplaceHashtableWithMap Consider replacing this Hashtable with the newer java.util.Map 363
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 363
MissingOverride The method 'isInvoked(HttpServletRequest)' is missing an @Override annotation. 421433
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 426430
MissingOverride The method 'getName()' is missing an @Override annotation. 440443
ConfusingTernary Avoid if (x != y) ..; else ..; 452461
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'strPageTemplateDocument' 456
CyclomaticComplexity The method 'getPortlet(HttpServletRequest, String, int)' has a cyclomatic complexity of 12. 476599
NPathComplexity The method 'getPortlet(HttpServletRequest, String, int)' has an NPath complexity of 273 476599
ExcessiveMethodLength Avoid really long methods. 476599
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 483
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 499
ReplaceHashtableWithMap Consider replacing this Hashtable with the newer java.util.Map 510
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 510
ConfusingTernary Avoid if (x != y) ..; else ..; 522530
ConfusingTernary Avoid if (x != y) ..; else ..; 541542
CyclomaticComplexity The method 'getRelatedDocumentsPortlet(HttpServletRequest, Document, int, int)' has a cyclomatic complexity of 10. 611656
UnusedFormalParameter Avoid unused method parameters such as 'nPortletId'. 611
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 616
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 619
MissingOverride The method 'dispose()' is missing an @Override annotation. 661663
UncommentedEmptyMethodBody Document empty method body 662663
MissingOverride The method 'notifyElementEvicted(Ehcache, Element)' is missing an @Override annotation. 669672
MissingOverride The method 'notifyElementExpired(Ehcache, Element)' is missing an @Override annotation. 678681
MissingOverride The method 'notifyElementPut(Ehcache, Element)' is missing an @Override annotation. 687690
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 688
UncommentedEmptyMethodBody Document empty method body 689690
MissingOverride The method 'notifyElementRemoved(Ehcache, Element)' is missing an @Override annotation. 696700
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 697
MissingOverride The method 'notifyElementUpdated(Ehcache, Element)' is missing an @Override annotation. 706709
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 707
UncommentedEmptyMethodBody Document empty method body 708709
MissingOverride The method 'notifyRemoveAll(Ehcache)' is missing an @Override annotation. 714717
CloneMethodReturnTypeMustMatchClassName The return type of the clone() method must be the class name when implements Cloneable 765768

fr/paris/lutece/plugins/document/service/DocumentEvent.java

Rule Violation Ligne
ImmutableField Private field '_document' could be made final; it is only initialized in the declaration or constructor. 52
ImmutableField Private field '_user' could be made final; it is only initialized in the declaration or constructor. 53
ImmutableField Private field '_nType' could be made final; it is only initialized in the declaration or constructor. 54
ImmutableField Private field '_nSpaceId' could be made final; it is only initialized in the declaration or constructor. 55
ImmutableField Private field '_nStateId' could be made final; it is only initialized in the declaration or constructor. 56

fr/paris/lutece/plugins/document/service/DocumentEventListernersManager.java

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

fr/paris/lutece/plugins/document/service/DocumentException.java

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

fr/paris/lutece/plugins/document/service/DocumentMassActionResourceService.java

Rule Violation Ligne
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 'getTitle(String, Locale)' is missing an @Override annotation. 9196

fr/paris/lutece/plugins/document/service/DocumentPlugin.java

Rule Violation Ligne
CommentRequired Public method and constructor comments are required 5158
MissingOverride The method 'init()' is missing an @Override annotation. 5158

fr/paris/lutece/plugins/document/service/DocumentService.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34814
CyclomaticComplexity The class 'DocumentService' has a total cyclomatic complexity of 91 (highest 27). 94814
GodClass Possible God Class (WMC=91, ATFD=185, TCC=0.585%) 94814
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 132
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the buildXmlContent method if you want a default access modifier 156190
DefaultPackage Use explicit scoping instead of the default package private level 156190
LinguisticNaming Linguistics Antipattern - The getter 'getActions' should not return void linguistically 381397
LinguisticNaming Linguistics Antipattern - The getter 'getPublishedStatus' should not return void linguistically 403414
ConfusingTernary Avoid if (x != y) ..; else ..; 479490
SimplifiedTernary Ternary operators that can be simplified with || or && 531532
NcssCount The method 'getDocumentData(MultipartHttpServletRequest, Document, Locale)' has a NCSS line count of 65. 547673
NPathComplexity The method 'getDocumentData(MultipartHttpServletRequest, Document, Locale)' has an NPath complexity of 209952 547673
ExcessiveMethodLength Avoid really long methods. 547673
CyclomaticComplexity The method 'getDocumentData(MultipartHttpServletRequest, Document, Locale)' has a cyclomatic complexity of 25. 547673
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 551
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 552
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 553
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 555
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 557
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 559
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 561
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 562
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 592
CollapsibleIfStatements These nested if statements could be combined 633637
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 660
CyclomaticComplexity The method 'setAttribute(DocumentAttribute, Document, MultipartHttpServletRequest, Locale)' has a cyclomatic complexity of 27. 684813
ExcessiveMethodLength Avoid really long methods. 684813
NPathComplexity The method 'setAttribute(DocumentAttribute, Document, MultipartHttpServletRequest, Locale)' has an NPath complexity of 13023 684813
LinguisticNaming Linguistics Antipattern - The setter 'setAttribute' should not return any type except void linguistically 684813
ConfusingTernary Avoid if (x != y) ..; else ..; 694810

fr/paris/lutece/plugins/document/service/DocumentTools.java

Rule Violation Ligne
ConfusingTernary Avoid if (x != y) ..; else ..; 69
SimplifiedTernary Ternary operators that can be simplified with || or && 69
SimplifiedTernary Ternary operators that can be simplified with || or && 7172
ConfusingTernary Avoid if (x != y) ..; else ..; 7172
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 49 characters appended. 73
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 94
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 105
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 106

fr/paris/lutece/plugins/document/service/DocumentTypeResourceIdService.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 103106
MissingOverride The method 'register()' is missing an @Override annotation. 111180
ShortVariable Avoid variables with short names like rt 113
ShortVariable Avoid variables with short names like p 119
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 187190
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 198203

fr/paris/lutece/plugins/document/service/attributes/DateManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 6871
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 7780
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 8689
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 9598
MissingOverride The method 'validateValue(int, String, Locale)' is missing an @Override annotation. 107124
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 132160
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 145
MissingOverride The method 'getAttributeParametersValues(int, Locale)' is missing an @Override annotation. 168187
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 178
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 180
CyclomaticComplexity The method 'validateDate(String, Locale)' has a cyclomatic complexity of 10. 195240
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 197
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 198
ShortVariable Avoid variables with short names like i 199
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 199

fr/paris/lutece/plugins/document/service/attributes/DefaultManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateFormHtml(DocumentAttribute, Locale, String)' is missing an @Override annotation. 118134
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 125
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 125
MissingOverride The method 'getModifyFormHtml(DocumentAttribute, Document, Locale, String)' is missing an @Override annotation. 139192
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 141
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 141
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 171180
MissingOverride The method 'getCreateParametersFormHtml(Locale)' is missing an @Override annotation. 197200
MissingOverride The method 'getCreateParametersFormHtml(List, Locale)' is missing an @Override annotation. 205208
CommentRequired Public method and constructor comments are required 210239
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 215
ConfusingTernary Avoid if (x != y) ..; else ..; 225232
MissingOverride The method 'getModifyParametersFormHtml(Locale, int)' is missing an @Override annotation. 244247
CommentRequired Public method and constructor comments are required 249269
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 253
MissingOverride The method 'getExtraParameters(Locale)' is missing an @Override annotation. 274277
MissingOverride The method 'getExtraParametersValues(Locale, int)' is missing an @Override annotation. 282293
MissingOverride The method 'setAttributeTypeCode(String)' is missing an @Override annotation. 298301
MissingOverride The method 'getAttributeTypeCode()' is missing an @Override annotation. 306309
MissingOverride The method 'validateValue(int, String, Locale)' is missing an @Override annotation. 314338
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 322
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 343346
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 351354
MissingOverride The method 'canBeUsedAsThumbnail()' is missing an @Override annotation. 370373
MissingOverride The method 'getValueParameters(HttpServletRequest, Locale)' is missing an @Override annotation. 378381
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 391

fr/paris/lutece/plugins/document/service/attributes/DocumentAttributesService.java

Rule Violation Ligne
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listAttributes' 100

fr/paris/lutece/plugins/document/service/attributes/FileManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 6265
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 7174
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 8083
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 8992
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 101119

fr/paris/lutece/plugins/document/service/attributes/ImageFileManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 5154
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 6063
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 6972
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 7881

fr/paris/lutece/plugins/document/service/attributes/InternalLinkManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 5255
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 6164
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 7073
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 7982
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 9094

fr/paris/lutece/plugins/document/service/attributes/ListBoxManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 8083
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 8992
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 98101
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 107110
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 118129
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 144
CyclomaticComplexity The method 'getValueParameters(HttpServletRequest, Locale)' has a cyclomatic complexity of 14. 178249
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 190
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 257
CollapsibleIfStatements These nested if statements could be combined 291298

fr/paris/lutece/plugins/document/service/attributes/MultilineManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 4952
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 5861
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 6770
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 7679

fr/paris/lutece/plugins/document/service/attributes/NumerictextManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 5659
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 6568
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 7477
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 8386
MissingOverride The method 'validateValue(int, String, Locale)' is missing an @Override annotation. 95116
ConfusingTernary Avoid if (x != y) ..; else ..; 99113

fr/paris/lutece/plugins/document/service/attributes/RichTextManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 5255
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 6164
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 7073
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 7982
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 9094

fr/paris/lutece/plugins/document/service/attributes/TextManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 5962
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 6871
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 7780
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 8689
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 97124

fr/paris/lutece/plugins/document/service/attributes/UrlManager.java

Rule Violation Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 5255
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 6164
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 7276

fr/paris/lutece/plugins/document/service/autoarchiving/AutoArchivingDaemon.java

Rule Violation Ligne
MissingOverride The method 'run()' is missing an @Override annotation. 4750

fr/paris/lutece/plugins/document/service/autoarchiving/AutoArchivingService.java

Rule Violation Ligne
NonThreadSafeSingleton Singleton is not thread safe 6265
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 122 characters appended. 85

fr/paris/lutece/plugins/document/service/autopublication/AutoPublicationDaemon.java

Rule Violation Ligne
MissingOverride The method 'run()' is missing an @Override annotation. 4750

fr/paris/lutece/plugins/document/service/autopublication/AutoPublicationService.java

Rule Violation Ligne
NonThreadSafeSingleton Singleton is not thread safe 6871
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 125 characters appended. 91
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 133

fr/paris/lutece/plugins/document/service/category/CategoryService.java

Rule Violation Ligne
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the CategoryService constructor if you want a default access modifier 6467
MissingOverride The method 'getImageResource(int)' is missing an @Override annotation. 8487
MissingOverride The method 'getResourceTypeId()' is missing an @Override annotation. 9396
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 108
ConfusingTernary Avoid if (x != y) ..; else ..; 114121
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 142
ConfusingTernary Avoid if (x != y) ..; else ..; 148155
ShortVariable Avoid variables with short names like i 183
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 200
ConfusingTernary Avoid if (x != y) ..; else ..; 210217

fr/paris/lutece/plugins/document/service/docsearch/DefaultDocSearchIndexer.java

Rule Violation Ligne
UseUnderscoresInNumericLiterals Number 1000000 should separate every third digit with an underscore 78
MissingOverride The method 'getDocuments(Collection)' is missing an @Override annotation. 86102
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 89
ShortVariable Avoid variables with short names like ft 119
IdenticalCatchBranches 'catch' branch identical to 'SAXException' branch 146149
ShortVariable Avoid variables with short names like sb 153
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 181
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 182
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 182
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 183
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 184
ConfusingTernary Avoid if (x != y) ..; else ..; 190214
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 193
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 206

fr/paris/lutece/plugins/document/service/docsearch/DocSearchIndexerDaemon.java

Rule Violation Ligne
MissingOverride The method 'run()' is missing an @Override annotation. 5054

fr/paris/lutece/plugins/document/service/docsearch/DocSearchItem.java

Rule Violation Ligne
ConfusingTernary Avoid if (x != y) ..; else ..; 119
ConfusingTernary Avoid if (x != y) ..; else ..; 139

fr/paris/lutece/plugins/document/service/docsearch/DocSearchService.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34624
GodClass Possible God Class (WMC=61, ATFD=111, TCC=8.333%) 94624
UseUnderscoresInNumericLiterals Number 1000000 should separate every third digit with an underscore 101
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 102
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 103
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 106
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 132
NonThreadSafeSingleton Singleton is not thread safe 144147
NPathComplexity The method 'processIndexing(boolean)' has an NPath complexity of 308 157360
ExcessiveMethodLength Avoid really long methods. 157360
NcssCount The method 'processIndexing(boolean)' has a NCSS line count of 116. 157360
CyclomaticComplexity The method 'processIndexing(boolean)' has a cyclomatic complexity of 21. 157360
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 109 characters appended. 159
ConfusingTernary Avoid if (x != y) ..; else ..; 189328
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 196
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 203
ShortVariable Avoid variables with short names like it 205
AvoidDuplicateLiterals The String literal "\r\n" appears 5 times in this file; the first occurrence is on line 217 217
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 221
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 223
AvoidDuplicateLiterals The String literal "Indexing error : " appears 4 times in this file; the first occurrence is on line 228 228
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 237
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 244
ShortVariable Avoid variables with short names like it 246
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 263
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 265
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 281
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 299
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 318
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 320
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 335
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 371
ShortVariable Avoid variables with short names like ir 373
ShortVariable Avoid variables with short names like si 409
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 413
ExcessiveMethodLength Avoid really long methods. 430553
CyclomaticComplexity The method 'getSearchResults(String, boolean, boolean, String, DocumentType)' has a cyclomatic complexity of 17. 430553
NPathComplexity The method 'getSearchResults(String, boolean, boolean, String, DocumentType)' has an NPath complexity of 4034 430553
NcssCount The method 'getSearchResults(String, boolean, boolean, String, DocumentType)' has a NCSS line count of 68. 430553
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 433
ShortVariable Avoid variables with short names like ir 435
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 439
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 440
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 441
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 493
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 493
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 494
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 499
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 499
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 500
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 503
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 520
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 547

fr/paris/lutece/plugins/document/service/history/DocumentHistoryService.java

Rule Violation Ligne
MissingOverride The method 'processDocumentEvent(DocumentEvent)' is missing an @Override annotation. 76127
ConfusingTernary Avoid if (x != y) ..; else ..; 84
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 123

fr/paris/lutece/plugins/document/service/metadata/MetadataService.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. 4697
ShortVariable Avoid variables with short names like st 67

fr/paris/lutece/plugins/document/service/publishing/PortletInvalider.java

Rule Violation Ligne
MissingOverride The method 'processPublishingEvent(PublishingEvent)' is missing an @Override annotation. 5458
MissingOverride The method 'processDocumentEvent(DocumentEvent)' is missing an @Override annotation. 6474

fr/paris/lutece/plugins/document/service/publishing/PublishingEvent.java

Rule Violation Ligne
ImmutableField Private field '_nDocumentId' could be made final; it is only initialized in the declaration or constructor. 47
ImmutableField Private field '_nPortletId' could be made final; it is only initialized in the declaration or constructor. 48
ImmutableField Private field '_nType' could be made final; it is only initialized in the declaration or constructor. 49

fr/paris/lutece/plugins/document/service/publishing/PublishingEventListenersManager.java

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

fr/paris/lutece/plugins/document/service/publishing/PublishingService.java

Rule Violation Ligne
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 66
CyclomaticComplexity The method 'changeDocumentOrder(int, int, int)' has a cyclomatic complexity of 10. 186229
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 255
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 267
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 303
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 326
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 379
ShortVariable Avoid variables with short names like i 385
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listDocuments' 402
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 415
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 433
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 434

fr/paris/lutece/plugins/document/service/resource/DocumentExtendableResourceService.java

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

fr/paris/lutece/plugins/document/service/rules/RuleEngine.java

Rule Violation Ligne
MissingOverride The method 'processDocumentEvent(DocumentEvent)' is missing an @Override annotation. 8592

fr/paris/lutece/plugins/document/service/search/DocumentIndexer.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34390
UseUnderscoresInNumericLiterals Number 1000000 should separate every third digit with an underscore 100
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 134
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 159
ShortVariable Avoid variables with short names like it 162
PositionLiteralsFirstInCaseInsensitiveComparisons Position literals first in String comparisons for EqualsIgnoreCase 224
ShortVariable Avoid variables with short names like ft 247
IdenticalCatchBranches 'catch' branch identical to 'SAXException' branch 283286
ConfusingTernary Avoid if (x != y) ..; else ..; 328355
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 331
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 346
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 360
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 360
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 372

fr/paris/lutece/plugins/document/service/spaces/DocumentSpacesService.java

Rule Violation Ligne
GodClass Possible God Class (WMC=62, ATFD=58, TCC=1.471%) 71612
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'xslSource' 191
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 216
CyclomaticComplexity The method 'findSpacesByCodeType(StringBuffer, int, AdminUser, String)' has a cyclomatic complexity of 13. 242327
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 263
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 284290
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 385
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 386
CyclomaticComplexity The method 'getSpacesBrowser(HttpServletRequest, AdminUser, Locale, boolean, boolean, boolean)' has a cyclomatic complexity of 13. 436531
NPathComplexity The method 'getSpacesBrowser(HttpServletRequest, AdminUser, Locale, boolean, boolean, boolean)' has an NPath complexity of 1152 436531
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 441
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 441
ShortVariable Avoid variables with short names like i 446
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 504
ControlStatementBraces This statement should have braces 526
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 555
LinguisticNaming Linguistics Antipattern - The getter 'getSpaceParents' should not return void linguistically 568581
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 603

fr/paris/lutece/plugins/document/service/spaces/SpaceRemovalListenerService.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. 4455

fr/paris/lutece/plugins/document/service/spaces/SpaceResourceIdService.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 7982
MissingOverride The method 'register()' is missing an @Override annotation. 87121
ShortVariable Avoid variables with short names like rt 89
ShortVariable Avoid variables with short names like p 95
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 128131
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 139159

fr/paris/lutece/plugins/document/utils/ImageUtils.java

Rule Violation Ligne
ShortVariable Avoid variables with short names like in 73

fr/paris/lutece/plugins/document/web/DocumentContentJspBean.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 101
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 101

fr/paris/lutece/plugins/document/web/DocumentDashboardComponent.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 114
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 114
ShortVariable Avoid variables with short names like t 121

fr/paris/lutece/plugins/document/web/DocumentJspBean.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 341984
CyclomaticComplexity The class 'DocumentJspBean' has a total cyclomatic complexity of 205 (highest 40). 1241984
GodClass Possible God Class (WMC=205, ATFD=321, TCC=14.225%) 1241984
ExcessiveClassLength Avoid really long classes. 1241984
TooManyMethods This class has too many methods, consider refactoring it. 1251984
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 255
CallSuperInConstructor It is a good practice to call super() in a constructor 263266
NcssCount The method 'getManageDocuments(HttpServletRequest)' has a NCSS line count of 70. 273398
ExcessiveMethodLength Avoid really long methods. 273398
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 275
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 306
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 306
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 341343
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 345
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 373
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 422
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 422
UnusedFormalParameter Avoid unused method parameters such as 'request'. 464
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 467
UnusedFormalParameter Avoid unused method parameters such as 'request'. 481
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 483
ConfusingTernary Avoid if (x != y) ..; else ..; 504
ConfusingTernary Avoid if (x != y) ..; else ..; 517
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 541
ConfusingTernary Avoid if (x != y) ..; else ..; 631632
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 633
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 633
ExcessiveMethodLength Avoid really long methods. 10921286
CyclomaticComplexity The method 'doActionSelectionDocument(HttpServletRequest)' has a cyclomatic complexity of 40. 10921286
NcssCount The method 'doActionSelectionDocument(HttpServletRequest)' has a NCSS line count of 83. 10921286
UnusedLocalVariable Avoid unused local variables such as 'nbDocumentsAffected'. 1098
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 11741177
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 12131218
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 12651270
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1410
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1410
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1443
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1443
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1472
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 1481
ExcessiveMethodLength Avoid really long methods. 15251680
NPathComplexity The method 'getMassArchivalDocument(HttpServletRequest)' has an NPath complexity of 2720 15251680
NcssCount The method 'getMassArchivalDocument(HttpServletRequest)' has a NCSS line count of 80. 15251680
CyclomaticComplexity The method 'getMassArchivalDocument(HttpServletRequest)' has a cyclomatic complexity of 21. 15251680
AvoidDuplicateLiterals The String literal "to_archive" appears 4 times in this file; the first occurrence is on line 1,538 1538
AvoidDuplicateLiterals The String literal "jsp/admin/plugins/document/MassArchivalDocument.jsp" appears 4 times in this file; the first occurrence is on line 1,582 1582
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 1588
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 1589
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1639
AddEmptyString Do not add empty strings 1653
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1665
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1665
ConfusingTernary Avoid if (x != y) ..; else ..; 17101717
ConfusingTernary Avoid if (x != y) ..; else ..; 17541761
ConfusingTernary Avoid if (x != y) ..; else ..; 17891796
ConfusingTernary Avoid if (x != y) ..; else ..; 18251833
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1898
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1898
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 19171923
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 1950

fr/paris/lutece/plugins/document/web/DocumentLegacyServletRedirectFilter.java

Rule Violation Ligne
MissingOverride The method 'doFilter(ServletRequest, ServletResponse, FilterChain)' is missing an @Override annotation. 6891
ConfusingTernary Avoid if (x != y) ..; else ..; 7380

fr/paris/lutece/plugins/document/web/DocumentMetaPageInclude.java

Rule Violation Ligne
MissingOverride The method 'fillTemplate(Map, PageData, int, HttpServletRequest)' is missing an @Override annotation. 74102
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 8697
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'sourceXsl' 113

fr/paris/lutece/plugins/document/web/DocumentResourceServlet.java

Rule Violation Ligne
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 154
ConfusingTernary Avoid if (x != y) ..; else ..; 202211
ConfusingTernary Avoid if (x != y) ..; else ..; 284303
PositionLiteralsFirstInComparisons Position literals first in String comparisons 315
PositionLiteralsFirstInComparisons Position literals first in String comparisons 315
PositionLiteralsFirstInComparisons Position literals first in String comparisons 316
PositionLiteralsFirstInComparisons Position literals first in String comparisons 316

fr/paris/lutece/plugins/document/web/DocumentServiceJspBean.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34439
MissingOverride The method 'getInsertServiceSelectorUI(HttpServletRequest)' is missing an @Override annotation. 159162
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 259
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 380
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 381
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 382
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 383
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 383
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 385
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 433
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 433

fr/paris/lutece/plugins/document/web/DocumentTypeJspBean.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 341018
GodClass Possible God Class (WMC=91, ATFD=176, TCC=24.923%) 881018
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 881018
CyclomaticComplexity The class 'DocumentTypeJspBean' has a total cyclomatic complexity of 91 (highest 11). 881018
TooManyMethods This class has too many methods, consider refactoring it. 891018
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 161
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 172
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 172
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 189
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 189
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 207
ConfusingTernary Avoid if (x != y) ..; else ..; 247254
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 264
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 264
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 282
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 284
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 285
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 286
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 288
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 289
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 329
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 329
LinguisticNaming Linguistics Antipattern - The getter 'getAttributeData' should not return void linguistically 460513
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 463
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 469
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 522
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 541
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 586
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 616617
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 619
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 619
AddEmptyString Do not add empty strings 645
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 743
CyclomaticComplexity The method 'getStyleSheets(MultipartHttpServletRequest)' has a cyclomatic complexity of 11. 821875
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 823
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 827
ConfusingTernary Avoid if (x != y) ..; else ..; 890897
LinguisticNaming Linguistics Antipattern - The method 'isValid' indicates linguistically it returns a boolean, but it returns 'String' 920937
ShortVariable Avoid variables with short names like is 928
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 931

fr/paris/lutece/plugins/document/web/ResourceServletCache.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 5154
MissingOverride The method 'getName()' is missing an @Override annotation. 6063
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the removeFromKeyPattern method if you want a default access modifier 89100
DefaultPackage Use explicit scoping instead of the default package private level 89100

fr/paris/lutece/plugins/document/web/ResourceServletContentTypeCache.java

Rule Violation Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 5362
PositionLiteralsFirstInCaseInsensitiveComparisons Position literals first in String comparisons for EqualsIgnoreCase 57
MissingOverride The method 'getName()' is missing an @Override annotation. 6871

fr/paris/lutece/plugins/document/web/ResourceValueObject.java

Rule Violation Ligne
UncommentedEmptyConstructor Document empty constructor 5961
MethodReturnsInternalArray Returning '_content' may expose an internal array. 104
ArrayIsStoredDirectly The user-supplied array 'content' is stored directly. 111

fr/paris/lutece/plugins/document/web/category/CategoryJspBean.java

Rule Violation Ligne
UnnecessaryConstructor Avoid unnecessary constructors - the compiler will generate these for you 116118
UncommentedEmptyConstructor Document empty constructor 116118
CallSuperInConstructor It is a good practice to call super() in a constructor 116118
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 131
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 150
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 150
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 171
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 174
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 177
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 229
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 229
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 246
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 247
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 248
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 249
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 250

fr/paris/lutece/plugins/document/web/docsearch/AdvancedSearch.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 70253
CyclomaticComplexity The method 'getPage(HttpServletRequest, int, Plugin)' has a cyclomatic complexity of 17. 100211
MissingOverride The method 'getPage(HttpServletRequest, int, Plugin)' is missing an @Override annotation. 100211
NPathComplexity The method 'getPage(HttpServletRequest, int, Plugin)' has an NPath complexity of 1409 100211
ExcessiveMethodLength Avoid really long methods. 100211
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 104
ConfusingTernary Avoid if (x != y) ..; else ..; 109199
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 145
ShortVariable Avoid variables with short names like i 148
ShortVariable Avoid variables with short names like c 156
ShortVariable Avoid variables with short names like it 157
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 177
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 191
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 220
ShortVariable Avoid variables with short names like f 220

fr/paris/lutece/plugins/document/web/docsearch/DocSearchJspBean.java

Rule Violation Ligne
NPathComplexity The method 'getSearch(HttpServletRequest)' has an NPath complexity of 408 105211
NcssCount The method 'getSearch(HttpServletRequest)' has a NCSS line count of 61. 105211
ExcessiveMethodLength Avoid really long methods. 105211
CyclomaticComplexity The method 'getSearch(HttpServletRequest)' has a cyclomatic complexity of 11. 105211
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 112
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 112
ConfusingTernary Avoid if (x != y) ..; else ..; 125
ConfusingTernary Avoid if (x != y) ..; else ..; 129
ConfusingTernary Avoid if (x != y) ..; else ..; 137188
ConfusingTernary Avoid if (x != y) ..; else ..; 162171
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 198199

fr/paris/lutece/plugins/document/web/history/DocumentHistoryJspBean.java

Rule Violation Ligne
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 92
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 95
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 95

fr/paris/lutece/plugins/document/web/portlet/DocumentListPortletJspBean.java

Rule Violation Ligne
MissingOverride The method 'getCreate(HttpServletRequest)' is missing an @Override annotation. 105116
MissingOverride The method 'getModify(HttpServletRequest)' is missing an @Override annotation. 124137
MissingOverride The method 'doCreate(HttpServletRequest)' is missing an @Override annotation. 145175
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 149
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 152
MissingOverride The method 'doModify(HttpServletRequest)' is missing an @Override annotation. 183230
LinguisticNaming Linguistics Antipattern - The setter 'setIdCategory' should not return any type except void linguistically 237255
ShortVariable Avoid variables with short names like i 244
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 277
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 277
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 295
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 312
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 312

fr/paris/lutece/plugins/document/web/portlet/DocumentPortletJspBean.java

Rule Violation Ligne
MissingOverride The method 'getCreate(HttpServletRequest)' is missing an @Override annotation. 107118
MissingOverride The method 'getModify(HttpServletRequest)' is missing an @Override annotation. 126139
MissingOverride The method 'doCreate(HttpServletRequest)' is missing an @Override annotation. 147177
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 151
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 154
MissingOverride The method 'doModify(HttpServletRequest)' is missing an @Override annotation. 185231
LinguisticNaming Linguistics Antipattern - The setter 'setIdCategory' should not return any type except void linguistically 238256
ShortVariable Avoid variables with short names like i 245
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 278
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 278
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 296
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 313
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 313

fr/paris/lutece/plugins/document/web/publishing/DocumentPublishingJspBean.java

Rule Violation Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 341171
ExcessiveClassLength Avoid really long classes. 931171
CyclomaticComplexity The class 'DocumentPublishingJspBean' has a total cyclomatic complexity of 110 (highest 21). 931171
NPathComplexity The method 'getManageDocumentPublishing(HttpServletRequest)' has an NPath complexity of 4322 181299
NcssCount The method 'getManageDocumentPublishing(HttpServletRequest)' has a NCSS line count of 61. 181299
CyclomaticComplexity The method 'getManageDocumentPublishing(HttpServletRequest)' has a cyclomatic complexity of 21. 181299
ExcessiveMethodLength Avoid really long methods. 181299
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 194
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 194
ConfusingTernary Avoid if (x != y) ..; else ..; 204205
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 221224
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 244
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 246262
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 255
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 327
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listFilteredPortlets' 340
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 369
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listFilteredPortlets' 381
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 395
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 406
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 406
CyclomaticComplexity The method 'doAssignedDocument(HttpServletRequest)' has a cyclomatic complexity of 11. 436496
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 445
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 463
ConfusingTernary Avoid if (x != y) ..; else ..; 513520
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 535
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 536
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 546
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 546
TooFewBranchesForASwitchStatement A switch with less than three branches is inefficient, use a if statement instead. 572579
MissingBreakInSwitch A switch statement does not contain a break 604621
TooFewBranchesForASwitchStatement A switch with less than three branches is inefficient, use a if statement instead. 604621
ConfusingTernary Avoid if (x != y) ..; else ..; 624632
TooFewBranchesForASwitchStatement A switch with less than three branches is inefficient, use a if statement instead. 665683
MissingBreakInSwitch A switch statement does not contain a break 665683
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 768
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 768
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 883
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 883
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 928
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 928
UnusedFormalParameter Avoid unused method parameters such as 'request'. 1039
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1049
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1049
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1065
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1065
UnusedFormalParameter Avoid unused method parameters such as 'request'. 1089
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1092
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 1102
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 1102
ConfusingTernary Avoid if (x != y) ..; else ..; 1109
LinguisticNaming Linguistics Antipattern - The setter 'setFillFilter' should not return any type except void linguistically 11321170
ConfusingTernary Avoid if (x != y) ..; else ..; 11371167

fr/paris/lutece/plugins/document/web/rules/DocumentRulesJspBean.java

Rule Violation Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 142
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 153
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 153
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 179
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 179
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 233
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 233

fr/paris/lutece/plugins/document/web/spaces/DocumentSpaceJspBean.java

Rule Violation Ligne
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
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 162
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 197
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 197
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 254
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 255
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 258
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 259
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 260
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 262
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 263
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 282285
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 304
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 315
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 328
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 385
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 386
ConfusingTernary Avoid if (x != y) ..; else ..; 389396
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 403
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 403
CyclomaticComplexity The method 'doMoveSpace(HttpServletRequest)' has a cyclomatic complexity of 10. 421471

Priority 4

fr/paris/lutece/plugins/document/business/DocumentFilter.java

Rule Violation Ligne
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 162
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 199
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 209212

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortlet.java

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

fr/paris/lutece/plugins/document/business/portlet/DocumentPortlet.java

Rule Violation Ligne
UnusedImports Avoid unused imports such as 'java.util.Collection' 41
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 180

fr/paris/lutece/plugins/document/business/portlet/PortletFilter.java

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

fr/paris/lutece/plugins/document/business/rules/Rule.java

Rule Violation Ligne
ShortClassName Avoid short class names like Rule 48191

fr/paris/lutece/plugins/document/service/DocumentService.java

Rule Violation Ligne
UnusedImports Avoid unused imports such as 'fr.paris.lutece.plugins.document.business.attributes.MapProviderManager' 42
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.util.Date' due to existing import 'java.util.Date' 241
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.util.Date' due to existing import 'java.util.Date' 242
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.util.Date' due to existing import 'java.util.Date' 260

fr/paris/lutece/plugins/document/service/attributes/DefaultManager.java

Rule Violation Ligne
UnusedImports Avoid unused imports such as 'fr.paris.lutece.plugins.document.business.attributes.IMapProvider' 41

fr/paris/lutece/plugins/document/service/category/CategoryService.java

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

fr/paris/lutece/plugins/document/service/docsearch/DocSearchService.java

Rule Violation Ligne
UnusedImports Avoid unused imports such as 'org.apache.lucene.util.Version' 73
UnusedImports Avoid unused imports such as 'java.io.File' 75
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 201
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 205
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 209
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 242
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 246
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 250

Fichiers

fr/paris/lutece/plugins/document/business/Document.java

Rule Violation Priority Ligne
ExcessivePublicCount This class has a bunch of public methods and attributes 3 34905
TooManyFields Too many fields 3 61905
GodClass Possible God Class (WMC=73, ATFD=8, TCC=2.191%) 3 61905
UnusedPrivateField Avoid unused private fields such as 'CONSTANT_QUESTION_MARK'. 3 79
UnusedPrivateField Avoid unused private fields such as 'CONSTANT_EQUALS'. 3 80
ConfusingTernary Avoid if (x != y) ..; else ..; 3 203
ConfusingTernary Avoid if (x != y) ..; else ..; 3 329
ConfusingTernary Avoid if (x != y) ..; else ..; 3 695703
ShortVariable Avoid variables with short names like gc 3 794
LogicInversion Use opposite operator instead of the logic complement operator. 3 835

fr/paris/lutece/plugins/document/business/DocumentDAO.java

Rule Violation Priority Ligne
ExcessiveClassLength Avoid really long classes. 3 521288
CyclomaticComplexity The class 'DocumentDAO' has a total cyclomatic complexity of 96 (highest 33). 3 521288
GodClass Possible God Class (WMC=96, ATFD=317, TCC=0.430%) 3 521288
TooManyMethods This class has too many methods, consider refactoring it. 3 531288
AvoidDuplicateLiterals The String literal " a.date_modification, a.xml_working_content, a.xml_validated_content, a.id_space , b.document_space_name , " appears 4 times in this file; the first occurrence is on line 57 3 57
AvoidDuplicateLiterals The String literal " INNER JOIN document_type d ON a.code_document_type = d.code_document_type " appears 5 times in this file; the first occurrence is on line 77 3 77
MissingOverride The method 'newPrimaryKey()' is missing an @Override annotation. 3 158175
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 183210
MissingOverride The method 'insert(Document)' is missing an @Override annotation. 3 183210
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 270273
MissingOverride The method 'loadWithoutBinaries(int)' is missing an @Override annotation. 3 282285
MissingOverride The method 'loadFromSpaceId(int)' is missing an @Override annotation. 3 364393
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 370
MissingOverride The method 'loadAttributes(Document)' is missing an @Override annotation. 3 401444
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 403
MissingOverride The method 'loadAttributesWithoutBinaries(Document, boolean)' is missing an @Override annotation. 3 454497
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 456
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 505519
MissingOverride The method 'validateAttributes(int)' is missing an @Override annotation. 3 559569
MissingOverride The method 'store(Document, boolean)' is missing an @Override annotation. 3 594628
MissingOverride The method 'selectPrimaryKeysByFilter(DocumentFilter)' is missing an @Override annotation. 3 637651
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 639
MissingOverride The method 'selectByFilter(DocumentFilter)' is missing an @Override annotation. 3 660716
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 662
NcssCount The method 'getDaoFromFilter(String, DocumentFilter)' has a NCSS line count of 73. 3 727873
CyclomaticComplexity The method 'getDaoFromFilter(String, DocumentFilter)' has a cyclomatic complexity of 33. 3 727873
ExcessiveMethodLength Avoid really long methods. 3 727873
NPathComplexity The method 'getDaoFromFilter(String, DocumentFilter)' has an NPath complexity of 6386688 3 727873
ConfusingTernary Avoid if (x != y) ..; else ..; 3 735
ConfusingTernary Avoid if (x != y) ..; else ..; 3 740
ShortVariable Avoid variables with short names like i 3 747
ConfusingTernary Avoid if (x != y) ..; else ..; 3 769
ConfusingTernary Avoid if (x != y) ..; else ..; 3 787
ConfusingTernary Avoid if (x != y) ..; else ..; 3 792
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 798
ConfusingTernary Avoid if (x != y) ..; else ..; 3 798
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 799
ConfusingTernary Avoid if (x != y) ..; else ..; 3 805
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 805
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 811
ConfusingTernary Avoid if (x != y) ..; else ..; 3 811
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 3 819
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 3 822
GuardLogStatement Logger calls should be surrounded by log level guards. 2 823
GuardLogStatement Logger calls should be surrounded by log level guards. 2 831
AvoidDuplicateLiterals The String literal "Param" appears 5 times in this file; the first occurrence is on line 831 3 831
GuardLogStatement Logger calls should be surrounded by log level guards. 2 838
GuardLogStatement Logger calls should be surrounded by log level guards. 2 845
GuardLogStatement Logger calls should be surrounded by log level guards. 2 856
GuardLogStatement Logger calls should be surrounded by log level guards. 2 867
MissingOverride The method 'selectByRelatedCategories(Document)' is missing an @Override annotation. 3 882932
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 884
MissingOverride The method 'loadResource(int)' is missing an @Override annotation. 3 941960
MissingOverride The method 'loadSpecificResource(int, int, boolean)' is missing an @Override annotation. 3 973994
MissingOverride The method 'selectAllPrimaryKeys()' is missing an @Override annotation. 3 10011017
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1003
MissingOverride The method 'selectAll()' is missing an @Override annotation. 3 10251067
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1027
MissingOverride The method 'getPageTemplateDocumentPath(int)' is missing an @Override annotation. 3 10761092
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1104
MissingOverride The method 'loadLastModifiedAttributes(int)' is missing an @Override annotation. 3 11761194
MissingOverride The method 'loadLastModifiedDocumentFromUser(String)' is missing an @Override annotation. 3 12031242
MissingOverride The method 'loadLastPublishedDocument()' is missing an @Override annotation. 3 12491287

fr/paris/lutece/plugins/document/business/DocumentFilter.java

Rule Violation Priority Ligne
MethodReturnsInternalArray Returning '_arrayCategoriesId' may expose an internal array. 3 155
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 162
ArrayIsStoredDirectly The user-supplied array 'arrayCategoriesId' is stored directly. 3 162
MethodReturnsInternalArray Returning '_arrayId' may expose an internal array. 3 192
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 199
ArrayIsStoredDirectly The user-supplied array 'arrayId' is stored directly. 3 199
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 209212

fr/paris/lutece/plugins/document/business/DocumentHome.java

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

fr/paris/lutece/plugins/document/business/DocumentPageTemplateDAO.java

Rule Violation Priority Ligne
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the newPrimaryKey method if you want a default access modifier 3 6381
DefaultPackage Use explicit scoping instead of the default package private level 3 6381
MissingOverride The method 'insert(DocumentPageTemplate)' is missing an @Override annotation. 3 89102
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 89102
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 111131
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 139145
MissingOverride The method 'store(DocumentPageTemplate)' is missing an @Override annotation. 3 153165
MissingOverride The method 'selectPageTemplatesList()' is missing an @Override annotation. 3 172192
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 174

fr/paris/lutece/plugins/document/business/DocumentResource.java

Rule Violation Priority Ligne
MethodReturnsInternalArray Returning '_strContent' may expose an internal array. 3 53
ArrayIsStoredDirectly The user-supplied array 'strContent' is stored directly. 3 62

fr/paris/lutece/plugins/document/business/DocumentType.java

Rule Violation Priority Ligne
ImmutableField Private field '_listAttributes' could be made final; it is only initialized in the declaration or constructor. 3 83
LooseCoupling Avoid using implementation types like 'ArrayList'; use the interface instead 3 83
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 83
MethodReturnsInternalArray Returning '_baAdminXsl' may expose an internal array. 3 179
ArrayIsStoredDirectly The user-supplied array 'baXsl' is stored directly. 3 188
MethodReturnsInternalArray Returning '_baContentServiceXsl' may expose an internal array. 3 200
ArrayIsStoredDirectly The user-supplied array 'baXsl' is stored directly. 3 209
ConfusingTernary Avoid if (x != y) ..; else ..; 3 263
MissingOverride The method 'getResourceTypeCode()' is missing an @Override annotation. 3 282285
MissingOverride The method 'getResourceId()' is missing an @Override annotation. 3 292295
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 304
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 304
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 319
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 319
ConfusingTernary Avoid if (x != y) ..; else ..; 3 336344

fr/paris/lutece/plugins/document/business/DocumentTypeDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'insert(DocumentType)' is missing an @Override annotation. 3 6577
MissingOverride The method 'load(String)' is missing an @Override annotation. 3 86111
MissingOverride The method 'delete(String)' is missing an @Override annotation. 3 119126
MissingOverride The method 'store(DocumentType)' is missing an @Override annotation. 3 134147
MissingOverride The method 'selectDocumentTypeList()' is missing an @Override annotation. 3 154176
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 156
MissingOverride The method 'getDocumentTypeList()' is missing an @Override annotation. 3 183200
MissingOverride The method 'checkDocuments(String)' is missing an @Override annotation. 3 208218
MissingOverride The method 'reorderAttributes(int, int, int, int)' is missing an @Override annotation. 3 231241
MissingOverride The method 'setAdminStyleSheet(byte, String)' is missing an @Override annotation. 3 251259
MissingOverride The method 'setContentStyleSheet(byte, String)' is missing an @Override annotation. 3 269277

fr/paris/lutece/plugins/document/business/IDocumentDAO.java

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

fr/paris/lutece/plugins/document/business/IndexerActionDAO.java

Rule Violation Priority Ligne
CommentRequired Public method and constructor comments are required 3 6380
MissingOverride The method 'newPrimaryKey()' is missing an @Override annotation. 3 6380
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 8799
MissingOverride The method 'insert(IndexerAction)' is missing an @Override annotation. 3 8799
CommentRequired Public method and constructor comments are required 3 8799
CommentRequired Public method and constructor comments are required 3 106125
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 106125
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 132138
CommentRequired Public method and constructor comments are required 3 132138
MissingOverride The method 'deleteAll()' is missing an @Override annotation. 3 145150
CommentRequired Public method and constructor comments are required 3 145150
MissingOverride The method 'store(IndexerAction)' is missing an @Override annotation. 3 157168
CommentRequired Public method and constructor comments are required 3 157168
MissingOverride The method 'selectList(IndexerActionFilter)' is missing an @Override annotation. 3 175213
CommentRequired Public method and constructor comments are required 3 175213
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 177
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 179
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 235
AssignmentInOperand Avoid assignments in operands 3 235

fr/paris/lutece/plugins/document/business/attributes/AttributeType.java

Rule Violation Priority Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 3 9093

fr/paris/lutece/plugins/document/business/attributes/AttributeTypeDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'insert(AttributeType)' is missing an @Override annotation. 3 6474
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 83103
MissingOverride The method 'delete(AttributeType)' is missing an @Override annotation. 3 111118
MissingOverride The method 'store(AttributeType)' is missing an @Override annotation. 3 126137
MissingOverride The method 'selectDocumentAttributeTypeList()' is missing an @Override annotation. 3 144164
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 146
MissingOverride The method 'selectAttributeTypeList(Locale)' is missing an @Override annotation. 3 173191
MissingOverride The method 'getAttributeManagersList()' is missing an @Override annotation. 3 201215
MissingOverride The method 'selectAttributeTypeParameterList(String)' is missing an @Override annotation. 3 227258
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 229
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 230
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 244

fr/paris/lutece/plugins/document/business/attributes/AttributeTypeParameter.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 52
ImmutableField Private field '_listDefaultValue' could be made final; it is only initialized in the declaration or constructor. 3 52
ImmutableField Private field '_listValues' could be made final; it is only initialized in the declaration or constructor. 3 53
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 53
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 3 8285
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 158
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 191

fr/paris/lutece/plugins/document/business/attributes/DocumentAttribute.java

Rule Violation Priority Ligne
ArrayIsStoredDirectly The user-supplied array 'bytes' is stored directly. 3 318
MethodReturnsInternalArray Returning '_bytes' may expose an internal array. 3 330

fr/paris/lutece/plugins/document/business/attributes/DocumentAttributeDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 47453
MissingOverride The method 'insert(DocumentAttribute)' is missing an @Override annotation. 3 105123
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 105123
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 132156
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 164173
MissingOverride The method 'store(DocumentAttribute)' is missing an @Override annotation. 3 214234
MissingOverride The method 'selectAttributesByDocumentType(DocumentType)' is missing an @Override annotation. 3 242268
MissingOverride The method 'selectAllAttributesOfDocumentType(String)' is missing an @Override annotation. 3 277302
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 279
ShortVariable Avoid variables with short names like i 3 311
MissingOverride The method 'selectAttributeParametersValues(int)' is missing an @Override annotation. 3 334352
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 336
MissingOverride The method 'getAttributeParameterValues(int, String)' is missing an @Override annotation. 3 363379
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 365
MissingOverride The method 'insertRegularExpression(int, int)' is missing an @Override annotation. 3 389396
MissingOverride The method 'deleteRegularExpression(int, int)' is missing an @Override annotation. 3 406413
MissingOverride The method 'selectListRegularExpressionKeyByIdAttribute(int)' is missing an @Override annotation. 3 436452
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 438

fr/paris/lutece/plugins/document/business/attributes/MapProviderManager.java

Rule Violation Priority Ligne
ClassNamingConventions The utility class name 'MapProviderManager' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 1 53100

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublication.java

Rule Violation Priority Ligne
NonThreadSafeSingleton Singleton is not thread safe 3 5458

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'delete(int, int)' is missing an @Override annotation. 3 6774
MissingOverride The method 'deleteAllSpaces(int)' is missing an @Override annotation. 3 8288
MissingOverride The method 'insert(DocumentAutoPublication)' is missing an @Override annotation. 3 96104
MissingOverride The method 'load(int, int)' is missing an @Override annotation. 3 115134
MissingOverride The method 'load()' is missing an @Override annotation. 3 141159
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 146
MissingOverride The method 'selectByPortletId(int)' is missing an @Override annotation. 3 168187
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 174
MissingOverride The method 'selectBySpaceId(int)' is missing an @Override annotation. 3 196215
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 202
MissingOverride The method 'store(DocumentAutoPublication)' is missing an @Override annotation. 3 223233

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationDocumentSpaceRemovalListener.java

Rule Violation Priority Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 5777
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 8892

fr/paris/lutece/plugins/document/business/autopublication/DocumentAutoPublicationHome.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 46187
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 163166
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 180183

fr/paris/lutece/plugins/document/business/category/Category.java

Rule Violation Priority Ligne
MethodReturnsInternalArray Returning '_byteIconContent' may expose an internal array. 3 57
ArrayIsStoredDirectly The user-supplied array 'byteIconContent' is stored directly. 3 64
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 3 141144

fr/paris/lutece/plugins/document/business/category/CategoryDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 46361
MissingOverride The method 'selectAll()' is missing an @Override annotation. 3 7196
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 74
MissingOverride The method 'insert(Category)' is missing an @Override annotation. 3 104118
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 148172
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 180187
MissingOverride The method 'store(Category)' is missing an @Override annotation. 3 195208
MissingOverride The method 'selectByName(String)' is missing an @Override annotation. 3 217243
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 220
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 272
ShortVariable Avoid variables with short names like i 3 286
MissingOverride The method 'selectCountIdDocuments(int)' is missing an @Override annotation. 3 318333
MissingOverride The method 'loadImageResource(int)' is missing an @Override annotation. 3 342360

fr/paris/lutece/plugins/document/business/category/CategoryHome.java

Rule Violation Priority Ligne
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'categoryList' 3 65

fr/paris/lutece/plugins/document/business/history/HistoryEvent.java

Rule Violation Priority Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 3 192195

fr/paris/lutece/plugins/document/business/history/HistoryEventDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'insert(HistoryEvent)' is missing an @Override annotation. 3 5971
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 7986
MissingOverride The method 'selectEventListByDocument(int)' is missing an @Override annotation. 3 95118
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 97
MissingOverride The method 'selectEventListByUser(String)' is missing an @Override annotation. 3 127150
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 129

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortlet.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 6366
MissingOverride The method 'getXml(HttpServletRequest)' is missing an @Override annotation. 3 7593
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'str' 3 92
MissingOverride The method 'getXmlDocument(HttpServletRequest)' is missing an @Override annotation. 3 102105
MissingOverride The method 'remove()' is missing an @Override annotation. 3 118121
MethodReturnsInternalArray Returning '_nArrayIdCategory' may expose an internal array. 3 170
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 177
ArrayIsStoredDirectly The user-supplied array 'arrayIdCategory' is stored directly. 3 177

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortletDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'insert(Portlet)' is missing an @Override annotation. 3 7890
ShortVariable Avoid variables with short names like p 3 80
ShortVariable Avoid variables with short names like p 3 100
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 124138
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 175194
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 208
ShortVariable Avoid variables with short names like i 3 218
MissingOverride The method 'store(Portlet)' is missing an @Override annotation. 3 234248
ShortVariable Avoid variables with short names like p 3 236
MissingOverride The method 'selectByDocumentIdAndDocumentType(int, String, PortletOrder, PortletFilter)' is missing an @Override annotation. 3 261319
CyclomaticComplexity The method 'selectByDocumentIdAndDocumentType(int, String, PortletOrder, PortletFilter)' has a cyclomatic complexity of 10. 3 261319
ConfusingTernary Avoid if (x != y) ..; else ..; 3 267
MissingOverride The method 'checkIsAliasPortlet(int)' is missing an @Override annotation. 3 328344

fr/paris/lutece/plugins/document/business/portlet/DocumentListPortletHome.java

Rule Violation Priority Ligne
RedundantFieldInitializer Avoid using redundant field initializer for '_singleton' 3 55
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 55
CallSuperInConstructor It is a good practice to call super() in a constructor 3 6066
NonThreadSafeSingleton Singleton is not thread safe 3 7578
MissingOverride The method 'getPortletTypeId()' is missing an @Override annotation. 3 8894
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'strPortletTypeId' 3 93
MissingOverride The method 'getDAO()' is missing an @Override annotation. 3 101104

fr/paris/lutece/plugins/document/business/portlet/DocumentPortlet.java

Rule Violation Priority Ligne
UnusedImports Avoid unused imports such as 'java.util.Collection' 4 41
CallSuperInConstructor It is a good practice to call super() in a constructor 3 6770
MissingOverride The method 'getXml(HttpServletRequest)' is missing an @Override annotation. 3 7996
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'str' 3 95
MissingOverride The method 'getXmlDocument(HttpServletRequest)' is missing an @Override annotation. 3 105108
MissingOverride The method 'remove()' is missing an @Override annotation. 3 121124
MethodReturnsInternalArray Returning '_nArrayIdCategory' may expose an internal array. 3 173
ArrayIsStoredDirectly The user-supplied array 'arrayIdCategory' is stored directly. 3 180
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 180

fr/paris/lutece/plugins/document/business/portlet/DocumentPortletDAO.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 45365
TooManyMethods This class has too many methods, consider refactoring it. 3 46365
MissingOverride The method 'insert(Portlet)' is missing an @Override annotation. 3 7789
ShortVariable Avoid variables with short names like p 3 79
ShortVariable Avoid variables with short names like p 3 99
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 123137
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 174193
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 207
ShortVariable Avoid variables with short names like i 3 217
MissingOverride The method 'store(Portlet)' is missing an @Override annotation. 3 233247
ShortVariable Avoid variables with short names like p 3 235
CyclomaticComplexity The method 'selectByDocumentOdAndDocumentType(int, String, PortletOrder, PortletFilter)' has a cyclomatic complexity of 10. 3 260317
MissingOverride The method 'selectByDocumentOdAndDocumentType(int, String, PortletOrder, PortletFilter)' is missing an @Override annotation. 3 260317
ConfusingTernary Avoid if (x != y) ..; else ..; 3 266
MissingOverride The method 'checkIsAliasPortlet(int)' is missing an @Override annotation. 3 326342
MissingOverride The method 'selectPortletsByDocumentId(int)' is missing an @Override annotation. 3 348364
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 354

fr/paris/lutece/plugins/document/business/portlet/DocumentPortletHome.java

Rule Violation Priority Ligne
CommentRequired Header comments are required 3 45147
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 53
RedundantFieldInitializer Avoid using redundant field initializer for '_singleton' 3 53
CallSuperInConstructor It is a good practice to call super() in a constructor 3 5864
NonThreadSafeSingleton Singleton is not thread safe 3 7376
MissingOverride The method 'getPortletTypeId()' is missing an @Override annotation. 3 8692
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'strPortletTypeId' 3 91
MissingOverride The method 'getDAO()' is missing an @Override annotation. 3 99102

fr/paris/lutece/plugins/document/business/portlet/IDocumentListPortletDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 62
MissingOverride The method 'insert(Portlet)' is missing an @Override annotation. 3 71
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 81
MissingOverride The method 'store(Portlet)' is missing an @Override annotation. 3 105

fr/paris/lutece/plugins/document/business/portlet/PortletFilter.java

Rule Violation Priority Ligne
ArrayIsStoredDirectly The user-supplied array 'strPageTitle' is stored directly. 3 68
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 68
MethodReturnsInternalArray Returning '_tabPageName' may expose an internal array. 3 80
ArrayIsStoredDirectly The user-supplied array 'strPortletTitle' is stored directly. 3 89
UseVarargs Consider using varargs for methods or constructors which take an array the last parameter. 4 89
MethodReturnsInternalArray Returning '_tabPortletName' may expose an internal array. 3 101
CyclomaticComplexity The method 'getSQLFilter()' has a cyclomatic complexity of 13. 3 172221

fr/paris/lutece/plugins/document/business/publication/DocumentPublicationDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 48397
MissingOverride The method 'insert(DocumentPublication)' is missing an @Override annotation. 3 6981
MissingOverride The method 'store(DocumentPublication)' is missing an @Override annotation. 3 89100
MissingOverride The method 'delete(int, int)' is missing an @Override annotation. 3 110117
MissingOverride The method 'deleteFromPortletId(int)' is missing an @Override annotation. 3 125131
MissingOverride The method 'deleteFromDocumentId(int)' is missing an @Override annotation. 3 139145
MissingOverride The method 'select(int, int)' is missing an @Override annotation. 3 159180
MissingOverride The method 'selectByPortletId(int)' is missing an @Override annotation. 3 189210
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 191
MissingOverride The method 'selectByDocumentId(int)' is missing an @Override annotation. 3 219240
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 221
MissingOverride The method 'selectByPortletIdAndStatus(int, int)' is missing an @Override annotation. 3 251273
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 253
MissingOverride The method 'selectByDocumentIdAndStatus(int, int)' is missing an @Override annotation. 3 284306
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 286
MissingOverride The method 'selectSinceDatePublishingAndStatus(Date, int)' is missing an @Override annotation. 3 317339
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 319
MissingOverride The method 'selectMaxDocumentOrder(int)' is missing an @Override annotation. 3 348363
MissingOverride The method 'selectDocumentIdByOrder(int, int)' is missing an @Override annotation. 3 374396
ConfusingTernary Avoid if (x != y) ..; else ..; 3 383391

fr/paris/lutece/plugins/document/business/publication/DocumentPublicationHome.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 46205
TooManyMethods This class has too many methods, consider refactoring it. 3 46205

fr/paris/lutece/plugins/document/business/publication/IDocumentPublicationDAO.java

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

fr/paris/lutece/plugins/document/business/rules/AbstractRule.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 54
ImmutableField Private field '_mapAttributes' could be made final; it is only initialized in the declaration or constructor. 3 54
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 54
MissingOverride The method 'getId()' is missing an @Override annotation. 3 6366
MissingOverride The method 'setId(int)' is missing an @Override annotation. 3 7477
MissingOverride The method 'getRuleTypeId()' is missing an @Override annotation. 3 8487
MissingOverride The method 'setRuleTypeId(String)' is missing an @Override annotation. 3 9598
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 3 106109
MissingOverride The method 'setAttribute(String, String)' is missing an @Override annotation. 3 129132
MissingOverride The method 'getAttribute(String)' is missing an @Override annotation. 3 141144
MissingOverride The method 'readAttributes(HttpServletRequest)' is missing an @Override annotation. 3 152168
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 159167
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 3 174
MissingOverride The method 'getUser()' is missing an @Override annotation. 3 181184
MissingOverride The method 'setUser(AdminUser)' is missing an @Override annotation. 3 193196

fr/paris/lutece/plugins/document/business/rules/Rule.java

Rule Violation Priority Ligne
ShortClassName Avoid short class names like Rule 4 48191

fr/paris/lutece/plugins/document/business/rules/RuleDAO.java

Rule Violation Priority Ligne
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 88100
MissingOverride The method 'insert(Rule)' is missing an @Override annotation. 3 88100
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 112122
MissingOverride The method 'load(int, IRuleTypesSet)' is missing an @Override annotation. 3 134153
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 181190
MissingOverride The method 'store(Rule)' is missing an @Override annotation. 3 213218
MissingOverride The method 'selectRuleList(IRuleTypesSet)' is missing an @Override annotation. 3 227243
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 229
MissingOverride The method 'selectRuleListByRuleTypeKey(String, IRuleTypesSet)' is missing an @Override annotation. 3 254273
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 256

fr/paris/lutece/plugins/document/business/rules/RuleTypesSet.java

Rule Violation Priority Ligne
MissingOverride The method 'setRuleTypesMap(Map)' is missing an @Override annotation. 3 5760
MissingOverride The method 'newInstance(String)' is missing an @Override annotation. 3 6988
IdenticalCatchBranches 'catch' branch identical to 'InstantiationException' branch 3 8285
MissingOverride The method 'getRuleTypeKey(Rule)' is missing an @Override annotation. 3 95121
IdenticalCatchBranches 'catch' branch identical to 'InstantiationException' branch 3 114117
MissingOverride The method 'getRuleTypesList(Locale)' is missing an @Override annotation. 3 128139
MissingOverride The method 'getRuleTypes()' is missing an @Override annotation. 3 146149

fr/paris/lutece/plugins/document/business/spaces/DocumentSpace.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 56
LooseCoupling Avoid using implementation types like 'ArrayList'; use the interface instead 3 56
ImmutableField Private field '_listDocumentType' could be made final; it is only initialized in the declaration or constructor. 3 56
MissingOverride The method 'getResourceTypeCode()' is missing an @Override annotation. 3 275278
MissingOverride The method 'getResourceId()' is missing an @Override annotation. 3 285288
AddEmptyString Do not add empty strings 3 287
MissingOverride The method 'getWorkgroup()' is missing an @Override annotation. 3 294297

fr/paris/lutece/plugins/document/business/spaces/DocumentSpaceDAO.java

Rule Violation Priority Ligne
TooManyMethods This class has too many methods, consider refactoring it. 3 48477
MissingOverride The method 'insert(DocumentSpace)' is missing an @Override annotation. 3 108125
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 108125
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 137145
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 155185
MissingOverride The method 'delete(int)' is missing an @Override annotation. 3 213221
MissingOverride The method 'store(DocumentSpace)' is missing an @Override annotation. 3 244262
MissingOverride The method 'selectChilds(int, String)' is missing an @Override annotation. 3 273310
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 275
ConfusingTernary Avoid if (x != y) ..; else ..; 3 278288
MissingOverride The method 'selectSpacesAllowingDocumentCreationByDocumentType(String, int)' is missing an @Override annotation. 3 319348
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 321
MissingOverride The method 'getDocumentSpaceList()' is missing an @Override annotation. 3 355373
MissingOverride The method 'getViewTypeList(Locale)' is missing an @Override annotation. 3 382398
MissingOverride The method 'getIconsList()' is missing an @Override annotation. 3 405421
MissingOverride The method 'selectAll()' is missing an @Override annotation. 3 428452
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 430
MissingOverride The method 'getAllowedDocumentTypes(int)' is missing an @Override annotation. 3 461476

fr/paris/lutece/plugins/document/business/spaces/SpaceAction.java

Rule Violation Priority Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 3 6164
MissingOverride The method 'getPermission()' is missing an @Override annotation. 3 175178

fr/paris/lutece/plugins/document/business/spaces/SpaceActionDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'selectActions()' is missing an @Override annotation. 3 5475
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 56

fr/paris/lutece/plugins/document/business/workflow/DocumentAction.java

Rule Violation Priority Ligne
MissingOverride The method 'setLocale(Locale)' is missing an @Override annotation. 3 112115
MissingOverride The method 'getPermission()' is missing an @Override annotation. 3 226229

fr/paris/lutece/plugins/document/business/workflow/DocumentActionDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 5989
MissingOverride The method 'selectActions(Document)' is missing an @Override annotation. 3 98121
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 100

fr/paris/lutece/plugins/document/business/workflow/DocumentStateDAO.java

Rule Violation Priority Ligne
MissingOverride The method 'load(int)' is missing an @Override annotation. 3 5776
MissingOverride The method 'selectDocumentStatesList(Locale)' is missing an @Override annotation. 3 85103

fr/paris/lutece/plugins/document/business/workflow/DocumentStateHome.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 4572

fr/paris/lutece/plugins/document/modules/metadatadublincore/DublinCoreMetadataHandler.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 81
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 81
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 99
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 99

fr/paris/lutece/plugins/document/modules/metadatadublincore/business/DublinCoreMetadata.java

Rule Violation Priority Ligne
CyclomaticComplexity The class 'DublinCoreMetadata' has a total cyclomatic complexity of 82 (highest 31). 3 55506
CyclomaticComplexity The constructor 'DublinCoreMetadata()' has a cyclomatic complexity of 16. 3 94111
NPathComplexity The constructor 'DublinCoreMetadata()' has an NPath complexity of 32768 3 94111
ConfusingTernary Avoid if (x != y) ..; else ..; 3 96
ConfusingTernary Avoid if (x != y) ..; else ..; 3 97
ConfusingTernary Avoid if (x != y) ..; else ..; 3 98
ConfusingTernary Avoid if (x != y) ..; else ..; 3 99
ConfusingTernary Avoid if (x != y) ..; else ..; 3 100
ConfusingTernary Avoid if (x != y) ..; else ..; 3 101
ConfusingTernary Avoid if (x != y) ..; else ..; 3 102
ConfusingTernary Avoid if (x != y) ..; else ..; 3 103
ConfusingTernary Avoid if (x != y) ..; else ..; 3 104
ConfusingTernary Avoid if (x != y) ..; else ..; 3 105
ConfusingTernary Avoid if (x != y) ..; else ..; 3 106
ConfusingTernary Avoid if (x != y) ..; else ..; 3 107
ConfusingTernary Avoid if (x != y) ..; else ..; 3 108
ConfusingTernary Avoid if (x != y) ..; else ..; 3 109
ConfusingTernary Avoid if (x != y) ..; else ..; 3 110
NPathComplexity The method 'getXml()' has an NPath complexity of 14348907 3 387470
CyclomaticComplexity The method 'getXml()' has a cyclomatic complexity of 31. 3 387470
ShortVariable Avoid variables with short names like sr 3 489
IdenticalCatchBranches 'catch' branch identical to 'FileNotFoundException' branch 3 497500
IdenticalCatchBranches 'catch' branch identical to 'FileNotFoundException' branch 3 501504

fr/paris/lutece/plugins/document/modules/rulemovespace/business/MoveSpaceRule.java

Rule Violation Priority Ligne
MissingOverride The method 'init()' is missing an @Override annotation. 3 8795
MissingOverride The method 'getNameKey()' is missing an @Override annotation. 3 101104
MissingOverride The method 'apply(DocumentEvent)' is missing an @Override annotation. 3 111133
CollapsibleIfStatements These nested if statements could be combined 3 121125
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 128
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 131
MissingOverride The method 'getCreateForm(AdminUser, Locale)' is missing an @Override annotation. 3 141196
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 143
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 143
MissingOverride The method 'isAuthorized(AdminUser)' is missing an @Override annotation. 3 203219
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 206
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 213216
MissingOverride The method 'validateRule()' is missing an @Override annotation. 3 226250
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 229
MissingOverride The method 'getAttributesList()' is missing an @Override annotation. 3 256259
MethodReturnsInternalArray Returning '_attributes' may expose an internal array. 3 258
MissingOverride The method 'getRule()' is missing an @Override annotation. 3 265285
CyclomaticComplexity The method 'equals(Object)' has a cyclomatic complexity of 12. 3 315346
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 3 315

fr/paris/lutece/plugins/document/modules/rulemovespace/business/MoveSpaceSpaceRemovalListener.java

Rule Violation Priority Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 5888
ShortVariable Avoid variables with short names like id 3 96
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 96100

fr/paris/lutece/plugins/document/modules/rulenotifyusers/business/NotifyUsersMailingListRemovalListener.java

Rule Violation Priority Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 5887
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 9599
ShortVariable Avoid variables with short names like id 3 95

fr/paris/lutece/plugins/document/modules/rulenotifyusers/business/NotifyUsersRule.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34474
MissingOverride The method 'init()' is missing an @Override annotation. 3 127141
MissingOverride The method 'getNameKey()' is missing an @Override annotation. 3 147150
MissingOverride The method 'apply(DocumentEvent)' is missing an @Override annotation. 3 157203
CollapsibleIfStatements These nested if statements could be combined 3 169196
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 176
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 176
ShortVariable Avoid variables with short names like t 3 185
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 199
MissingOverride The method 'getCreateForm(AdminUser, Locale)' is missing an @Override annotation. 3 211263
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 213
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 213
MissingOverride The method 'validateRule()' is missing an @Override annotation. 3 270286
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 272
MissingOverride The method 'isAuthorized(AdminUser)' is missing an @Override annotation. 3 293303
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 297300
MissingOverride The method 'getAttributesList()' is missing an @Override annotation. 3 309312
MethodReturnsInternalArray Returning '_attributes' may expose an internal array. 3 311
MissingOverride The method 'getRule()' is missing an @Override annotation. 3 318350
CyclomaticComplexity The method 'equals(Object)' has a cyclomatic complexity of 15. 3 439473
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 3 439

fr/paris/lutece/plugins/document/modules/rulenotifyusers/business/NotifyUsersSpaceRemovalListener.java

Rule Violation Priority Ligne
MissingOverride The method 'canBeRemoved(String)' is missing an @Override annotation. 3 5886
MissingOverride The method 'getRemovalRefusedMessage(String, Locale)' is missing an @Override annotation. 3 9498
ShortVariable Avoid variables with short names like id 3 94

fr/paris/lutece/plugins/document/service/AttributeService.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 48115
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 51
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 51
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 6271
IdenticalCatchBranches 'catch' branch identical to 'IllegalAccessException' branch 3 9598
IdenticalCatchBranches 'catch' branch identical to 'IllegalAccessException' branch 3 99102

fr/paris/lutece/plugins/document/service/DocumentContentService.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34788
GodClass Possible God Class (WMC=71, ATFD=89, TCC=12.281%) 3 102788
TooManyMethods This class has too many methods, consider refactoring it. 3 103788
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 148
MissingOverride The method 'getPage(HttpServletRequest, int)' is missing an @Override annotation. 3 170229
GuardLogStatement Logger calls should be surrounded by log level guards. 2 202203
GuardLogStatement Logger calls should be surrounded by log level guards. 2 219
GuardLogStatement Logger calls should be surrounded by log level guards. 2 225
PositionLiteralsFirstInCaseInsensitiveComparisons Position literals first in String comparisons for EqualsIgnoreCase 3 240
NcssCount The method 'buildPage(HttpServletRequest, String, String, String, int)' has a NCSS line count of 73. 3 264412
CyclomaticComplexity The method 'buildPage(HttpServletRequest, String, String, String, int)' has a cyclomatic complexity of 18. 3 264412
AvoidReassigningParameters Avoid reassigning parameters such as 'strPortletId' 2 264
ExcessiveMethodLength Avoid really long methods. 3 264412
NPathComplexity The method 'buildPage(HttpServletRequest, String, String, String, int)' has an NPath complexity of 3900 3 264412
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 269
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 270
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 270
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 270
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 293
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 293
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 338
ReplaceHashtableWithMap Consider replacing this Hashtable with the newer java.util.Map 3 363
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 363
MissingOverride The method 'isInvoked(HttpServletRequest)' is missing an @Override annotation. 3 421433
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 426430
MissingOverride The method 'getName()' is missing an @Override annotation. 3 440443
ConfusingTernary Avoid if (x != y) ..; else ..; 3 452461
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'strPageTemplateDocument' 3 456
CyclomaticComplexity The method 'getPortlet(HttpServletRequest, String, int)' has a cyclomatic complexity of 12. 3 476599
NPathComplexity The method 'getPortlet(HttpServletRequest, String, int)' has an NPath complexity of 273 3 476599
ExcessiveMethodLength Avoid really long methods. 3 476599
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 483
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 3 499
ReplaceHashtableWithMap Consider replacing this Hashtable with the newer java.util.Map 3 510
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 510
ConfusingTernary Avoid if (x != y) ..; else ..; 3 522530
ConfusingTernary Avoid if (x != y) ..; else ..; 3 541542
CyclomaticComplexity The method 'getRelatedDocumentsPortlet(HttpServletRequest, Document, int, int)' has a cyclomatic complexity of 10. 3 611656
UnusedFormalParameter Avoid unused method parameters such as 'nPortletId'. 3 611
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 616
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 619
MissingOverride The method 'dispose()' is missing an @Override annotation. 3 661663
UncommentedEmptyMethodBody Document empty method body 3 662663
MissingOverride The method 'notifyElementEvicted(Ehcache, Element)' is missing an @Override annotation. 3 669672
MissingOverride The method 'notifyElementExpired(Ehcache, Element)' is missing an @Override annotation. 3 678681
MissingOverride The method 'notifyElementPut(Ehcache, Element)' is missing an @Override annotation. 3 687690
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 3 688
UncommentedEmptyMethodBody Document empty method body 3 689690
MissingOverride The method 'notifyElementRemoved(Ehcache, Element)' is missing an @Override annotation. 3 696700
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 3 697
MissingOverride The method 'notifyElementUpdated(Ehcache, Element)' is missing an @Override annotation. 3 706709
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 3 707
UncommentedEmptyMethodBody Document empty method body 3 708709
MissingOverride The method 'notifyRemoveAll(Ehcache)' is missing an @Override annotation. 3 714717
CloneMethodReturnTypeMustMatchClassName The return type of the clone() method must be the class name when implements Cloneable 3 765768
ProperCloneImplementation Object clone() should be implemented with super.clone() 2 765

fr/paris/lutece/plugins/document/service/DocumentEvent.java

Rule Violation Priority Ligne
ImmutableField Private field '_document' could be made final; it is only initialized in the declaration or constructor. 3 52
ImmutableField Private field '_user' could be made final; it is only initialized in the declaration or constructor. 3 53
ImmutableField Private field '_nType' could be made final; it is only initialized in the declaration or constructor. 3 54
ImmutableField Private field '_nSpaceId' could be made final; it is only initialized in the declaration or constructor. 3 55
ImmutableField Private field '_nStateId' could be made final; it is only initialized in the declaration or constructor. 3 56

fr/paris/lutece/plugins/document/service/DocumentEventListernersManager.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 47
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the notifyListeners method if you want a default access modifier 3 7278
DefaultPackage Use explicit scoping instead of the default package private level 3 7278

fr/paris/lutece/plugins/document/service/DocumentException.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 5558

fr/paris/lutece/plugins/document/service/DocumentMassActionResourceService.java

Rule Violation Priority Ligne
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 'getTitle(String, Locale)' is missing an @Override annotation. 3 9196

fr/paris/lutece/plugins/document/service/DocumentPlugin.java

Rule Violation Priority Ligne
CommentRequired Public method and constructor comments are required 3 5158
MissingOverride The method 'init()' is missing an @Override annotation. 3 5158

fr/paris/lutece/plugins/document/service/DocumentService.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34814
UnusedImports Avoid unused imports such as 'fr.paris.lutece.plugins.document.business.attributes.MapProviderManager' 4 42
CyclomaticComplexity The class 'DocumentService' has a total cyclomatic complexity of 91 (highest 27). 3 94814
GodClass Possible God Class (WMC=91, ATFD=185, TCC=0.585%) 3 94814
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 94814
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 132
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the buildXmlContent method if you want a default access modifier 3 156190
DefaultPackage Use explicit scoping instead of the default package private level 3 156190
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.util.Date' due to existing import 'java.util.Date' 4 241
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.util.Date' due to existing import 'java.util.Date' 4 242
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.util.Date' due to existing import 'java.util.Date' 4 260
LinguisticNaming Linguistics Antipattern - The getter 'getActions' should not return void linguistically 3 381397
LinguisticNaming Linguistics Antipattern - The getter 'getPublishedStatus' should not return void linguistically 3 403414
ConfusingTernary Avoid if (x != y) ..; else ..; 3 479490
SimplifiedTernary Ternary operators that can be simplified with || or && 3 531532
NcssCount The method 'getDocumentData(MultipartHttpServletRequest, Document, Locale)' has a NCSS line count of 65. 3 547673
NPathComplexity The method 'getDocumentData(MultipartHttpServletRequest, Document, Locale)' has an NPath complexity of 209952 3 547673
ExcessiveMethodLength Avoid really long methods. 3 547673
CyclomaticComplexity The method 'getDocumentData(MultipartHttpServletRequest, Document, Locale)' has a cyclomatic complexity of 25. 3 547673
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 551
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 552
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 553
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 555
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 557
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 559
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 561
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 562
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 592
CollapsibleIfStatements These nested if statements could be combined 3 633637
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 660
CyclomaticComplexity The method 'setAttribute(DocumentAttribute, Document, MultipartHttpServletRequest, Locale)' has a cyclomatic complexity of 27. 3 684813
ExcessiveMethodLength Avoid really long methods. 3 684813
NPathComplexity The method 'setAttribute(DocumentAttribute, Document, MultipartHttpServletRequest, Locale)' has an NPath complexity of 13023 3 684813
LinguisticNaming Linguistics Antipattern - The setter 'setAttribute' should not return any type except void linguistically 3 684813
ConfusingTernary Avoid if (x != y) ..; else ..; 3 694810

fr/paris/lutece/plugins/document/service/DocumentTools.java

Rule Violation Priority Ligne
ClassNamingConventions The utility class name 'DocumentTools' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 1 47111
ConfusingTernary Avoid if (x != y) ..; else ..; 3 69
SimplifiedTernary Ternary operators that can be simplified with || or && 3 69
SimplifiedTernary Ternary operators that can be simplified with || or && 3 7172
ConfusingTernary Avoid if (x != y) ..; else ..; 3 7172
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 49 characters appended. 3 73
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 94
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 105
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 106

fr/paris/lutece/plugins/document/service/DocumentTypeResourceIdService.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 103106
MissingOverride The method 'register()' is missing an @Override annotation. 3 111180
ShortVariable Avoid variables with short names like rt 3 113
ShortVariable Avoid variables with short names like p 3 119
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 3 187190
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 3 198203

fr/paris/lutece/plugins/document/service/DocumentTypeService.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 45111

fr/paris/lutece/plugins/document/service/attributes/DateManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 6871
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 7780
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 8689
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 9598
MissingOverride The method 'validateValue(int, String, Locale)' is missing an @Override annotation. 3 107124
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 3 132160
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 145
MissingOverride The method 'getAttributeParametersValues(int, Locale)' is missing an @Override annotation. 3 168187
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 3 178
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 180
CyclomaticComplexity The method 'validateDate(String, Locale)' has a cyclomatic complexity of 10. 3 195240
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 197
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 198
ShortVariable Avoid variables with short names like i 3 199
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 199

fr/paris/lutece/plugins/document/service/attributes/DefaultManager.java

Rule Violation Priority Ligne
UnusedImports Avoid unused imports such as 'fr.paris.lutece.plugins.document.business.attributes.IMapProvider' 4 41
MissingOverride The method 'getCreateFormHtml(DocumentAttribute, Locale, String)' is missing an @Override annotation. 3 118134
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 125
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 125
MissingOverride The method 'getModifyFormHtml(DocumentAttribute, Document, Locale, String)' is missing an @Override annotation. 3 139192
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 141
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 141
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 171180
MissingOverride The method 'getCreateParametersFormHtml(Locale)' is missing an @Override annotation. 3 197200
MissingOverride The method 'getCreateParametersFormHtml(List, Locale)' is missing an @Override annotation. 3 205208
CommentRequired Public method and constructor comments are required 3 210239
AvoidReassigningParameters Avoid reassigning parameters such as 'model' 2 211
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 215
ConfusingTernary Avoid if (x != y) ..; else ..; 3 225232
MissingOverride The method 'getModifyParametersFormHtml(Locale, int)' is missing an @Override annotation. 3 244247
CommentRequired Public method and constructor comments are required 3 249269
AvoidReassigningParameters Avoid reassigning parameters such as 'model' 2 249
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 253
MissingOverride The method 'getExtraParameters(Locale)' is missing an @Override annotation. 3 274277
MissingOverride The method 'getExtraParametersValues(Locale, int)' is missing an @Override annotation. 3 282293
MissingOverride The method 'setAttributeTypeCode(String)' is missing an @Override annotation. 3 298301
MissingOverride The method 'getAttributeTypeCode()' is missing an @Override annotation. 3 306309
MissingOverride The method 'validateValue(int, String, Locale)' is missing an @Override annotation. 3 314338
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 322
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 1 343346
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 3 343346
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 3 351354
MissingOverride The method 'canBeUsedAsThumbnail()' is missing an @Override annotation. 3 370373
EmptyMethodInAbstractClassShouldBeAbstract An empty method in an abstract class should be abstract instead 1 378381
MissingOverride The method 'getValueParameters(HttpServletRequest, Locale)' is missing an @Override annotation. 3 378381
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 391

fr/paris/lutece/plugins/document/service/attributes/DocumentAttributesService.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 46121
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listAttributes' 3 100

fr/paris/lutece/plugins/document/service/attributes/FileManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 6265
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 7174
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 8083
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 8992
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 3 101119

fr/paris/lutece/plugins/document/service/attributes/ImageFileManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 5154
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 6063
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 6972
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 7881

fr/paris/lutece/plugins/document/service/attributes/InternalLinkManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 5255
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 6164
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 7073
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 7982
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 3 9094

fr/paris/lutece/plugins/document/service/attributes/ListBoxManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 8083
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 8992
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 98101
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 107110
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 3 118129
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 144
CyclomaticComplexity The method 'getValueParameters(HttpServletRequest, Locale)' has a cyclomatic complexity of 14. 3 178249
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 190
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 257
CollapsibleIfStatements These nested if statements could be combined 3 291298

fr/paris/lutece/plugins/document/service/attributes/MultilineManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 4952
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 5861
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 6770
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 7679

fr/paris/lutece/plugins/document/service/attributes/NumerictextManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 5659
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 6568
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 7477
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 8386
MissingOverride The method 'validateValue(int, String, Locale)' is missing an @Override annotation. 3 95116
ConfusingTernary Avoid if (x != y) ..; else ..; 3 99113

fr/paris/lutece/plugins/document/service/attributes/RichTextManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 5255
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 6164
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 7073
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 7982
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 3 9094

fr/paris/lutece/plugins/document/service/attributes/TextManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 5962
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 6871
MissingOverride The method 'getCreateParametersTemplate()' is missing an @Override annotation. 3 7780
MissingOverride The method 'getModifyParametersTemplate()' is missing an @Override annotation. 3 8689
MissingOverride The method 'validateValueParameters(List, Locale)' is missing an @Override annotation. 3 97124

fr/paris/lutece/plugins/document/service/attributes/UrlManager.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreateTemplate()' is missing an @Override annotation. 3 5255
MissingOverride The method 'getModifyTemplate()' is missing an @Override annotation. 3 6164
MissingOverride The method 'getAttributeXmlValue(Document, DocumentAttribute)' is missing an @Override annotation. 3 7276

fr/paris/lutece/plugins/document/service/autoarchiving/AutoArchivingDaemon.java

Rule Violation Priority Ligne
MissingOverride The method 'run()' is missing an @Override annotation. 3 4750

fr/paris/lutece/plugins/document/service/autoarchiving/AutoArchivingService.java

Rule Violation Priority Ligne
NonThreadSafeSingleton Singleton is not thread safe 3 6265
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 122 characters appended. 3 85

fr/paris/lutece/plugins/document/service/autopublication/AutoPublicationDaemon.java

Rule Violation Priority Ligne
MissingOverride The method 'run()' is missing an @Override annotation. 3 4750

fr/paris/lutece/plugins/document/service/autopublication/AutoPublicationService.java

Rule Violation Priority Ligne
NonThreadSafeSingleton Singleton is not thread safe 3 6871
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 125 characters appended. 3 91
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 133

fr/paris/lutece/plugins/document/service/category/CategoryService.java

Rule Violation Priority Ligne
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the CategoryService constructor if you want a default access modifier 3 6467
MissingOverride The method 'getImageResource(int)' is missing an @Override annotation. 3 8487
MissingOverride The method 'getResourceTypeId()' is missing an @Override annotation. 3 9396
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 108
ConfusingTernary Avoid if (x != y) ..; else ..; 3 114121
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 142
ConfusingTernary Avoid if (x != y) ..; else ..; 3 148155
ShortVariable Avoid variables with short names like i 3 183
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 200
ConfusingTernary Avoid if (x != y) ..; else ..; 3 210217
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 312315

fr/paris/lutece/plugins/document/service/docsearch/DefaultDocSearchIndexer.java

Rule Violation Priority Ligne
UseUnderscoresInNumericLiterals Number 1000000 should separate every third digit with an underscore 3 78
MissingOverride The method 'getDocuments(Collection)' is missing an @Override annotation. 3 86102
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 89
ShortVariable Avoid variables with short names like ft 3 119
IdenticalCatchBranches 'catch' branch identical to 'SAXException' branch 3 146149
ShortVariable Avoid variables with short names like sb 3 153
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 181
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 182
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 182
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 183
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 184
ConfusingTernary Avoid if (x != y) ..; else ..; 3 190214
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 193
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 206

fr/paris/lutece/plugins/document/service/docsearch/DocSearchIndexerDaemon.java

Rule Violation Priority Ligne
MissingOverride The method 'run()' is missing an @Override annotation. 3 5054

fr/paris/lutece/plugins/document/service/docsearch/DocSearchItem.java

Rule Violation Priority Ligne
ConstructorCallsOverridableMethod Overridable method 'setId' called during object construction 1 65
ConstructorCallsOverridableMethod Overridable method 'setTitle' called during object construction 1 66
ConstructorCallsOverridableMethod Overridable method 'setSummary' called during object construction 1 67
ConstructorCallsOverridableMethod Overridable method 'setDate' called during object construction 1 68
ConstructorCallsOverridableMethod Overridable method 'setType' called during object construction 1 69
ConfusingTernary Avoid if (x != y) ..; else ..; 3 119
ConfusingTernary Avoid if (x != y) ..; else ..; 3 139

fr/paris/lutece/plugins/document/service/docsearch/DocSearchService.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34624
UnusedImports Avoid unused imports such as 'org.apache.lucene.util.Version' 4 73
UnusedImports Avoid unused imports such as 'java.io.File' 4 75
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 94624
GodClass Possible God Class (WMC=61, ATFD=111, TCC=8.333%) 3 94624
UseUnderscoresInNumericLiterals Number 1000000 should separate every third digit with an underscore 3 101
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 102
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 103
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 106
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 132
NonThreadSafeSingleton Singleton is not thread safe 3 144147
NPathComplexity The method 'processIndexing(boolean)' has an NPath complexity of 308 3 157360
ExcessiveMethodLength Avoid really long methods. 3 157360
NcssCount The method 'processIndexing(boolean)' has a NCSS line count of 116. 3 157360
CyclomaticComplexity The method 'processIndexing(boolean)' has a cyclomatic complexity of 21. 3 157360
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 109 characters appended. 3 159
ConfusingTernary Avoid if (x != y) ..; else ..; 3 189328
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 196
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 4 201
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 203
ShortVariable Avoid variables with short names like it 3 205
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 4 205
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 4 209
AvoidDuplicateLiterals The String literal "\r\n" appears 5 times in this file; the first occurrence is on line 217 3 217
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 221
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 223
AvoidDuplicateLiterals The String literal "Indexing error : " appears 4 times in this file; the first occurrence is on line 228 3 228
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 237
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 4 242
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 244
ShortVariable Avoid variables with short names like it 3 246
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 4 246
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'org.apache.lucene.document.Document' due to existing import 'org.apache.lucene.document.Document' 4 250
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 263
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 265
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 281
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 299
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 318
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 320
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 335
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 371
ShortVariable Avoid variables with short names like ir 3 373
ShortVariable Avoid variables with short names like si 3 409
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 413
ExcessiveMethodLength Avoid really long methods. 3 430553
CyclomaticComplexity The method 'getSearchResults(String, boolean, boolean, String, DocumentType)' has a cyclomatic complexity of 17. 3 430553
NPathComplexity The method 'getSearchResults(String, boolean, boolean, String, DocumentType)' has an NPath complexity of 4034 3 430553
NcssCount The method 'getSearchResults(String, boolean, boolean, String, DocumentType)' has a NCSS line count of 68. 3 430553
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 433
ShortVariable Avoid variables with short names like ir 3 435
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 439
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 440
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 441
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 3 493
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 3 493
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 3 494
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 3 499
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 3 499
OptimizableToArrayCall This call to Collection.toArray() may be optimizable 3 500
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 503
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 520
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 547

fr/paris/lutece/plugins/document/service/history/DocumentHistoryService.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 49128
MissingOverride The method 'processDocumentEvent(DocumentEvent)' is missing an @Override annotation. 3 76127
ConfusingTernary Avoid if (x != y) ..; else ..; 3 84
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 123

fr/paris/lutece/plugins/document/service/metadata/MetadataService.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 4697
ShortVariable Avoid variables with short names like st 3 67

fr/paris/lutece/plugins/document/service/publishing/PortletInvalider.java

Rule Violation Priority Ligne
MissingOverride The method 'processPublishingEvent(PublishingEvent)' is missing an @Override annotation. 3 5458
MissingOverride The method 'processDocumentEvent(DocumentEvent)' is missing an @Override annotation. 3 6474

fr/paris/lutece/plugins/document/service/publishing/PublishingEvent.java

Rule Violation Priority Ligne
ImmutableField Private field '_nDocumentId' could be made final; it is only initialized in the declaration or constructor. 3 47
ImmutableField Private field '_nPortletId' could be made final; it is only initialized in the declaration or constructor. 3 48
ImmutableField Private field '_nType' could be made final; it is only initialized in the declaration or constructor. 3 49

fr/paris/lutece/plugins/document/service/publishing/PublishingEventListenersManager.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 47
DefaultPackage Use explicit scoping instead of the default package private level 3 7076
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the notifyListeners method if you want a default access modifier 3 7076

fr/paris/lutece/plugins/document/service/publishing/PublishingService.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 63462
AssignmentToNonFinalStatic Possible unsafe assignment to a non-final static field in a constructor. 3 66
CyclomaticComplexity The method 'changeDocumentOrder(int, int, int)' has a cyclomatic complexity of 10. 3 186229
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 255
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 267
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 303
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 326
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 379
ShortVariable Avoid variables with short names like i 3 385
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listDocuments' 3 402
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 415
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 433
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 434

fr/paris/lutece/plugins/document/service/resource/DocumentExtendableResourceService.java

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

fr/paris/lutece/plugins/document/service/rules/RuleEngine.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 4893
MissingOverride The method 'processDocumentEvent(DocumentEvent)' is missing an @Override annotation. 3 8592

fr/paris/lutece/plugins/document/service/search/DocumentIndexer.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34390
UseUnderscoresInNumericLiterals Number 1000000 should separate every third digit with an underscore 3 100
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 134
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 159
ShortVariable Avoid variables with short names like it 3 162
PositionLiteralsFirstInCaseInsensitiveComparisons Position literals first in String comparisons for EqualsIgnoreCase 3 224
ShortVariable Avoid variables with short names like ft 3 247
IdenticalCatchBranches 'catch' branch identical to 'SAXException' branch 3 283286
ConfusingTernary Avoid if (x != y) ..; else ..; 3 328355
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 331
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 346
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 360
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 360
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 372

fr/paris/lutece/plugins/document/service/spaces/DocumentSpacesService.java

Rule Violation Priority Ligne
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 71612
GodClass Possible God Class (WMC=62, ATFD=58, TCC=1.471%) 3 71612
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'xslSource' 3 191
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 216
CyclomaticComplexity The method 'findSpacesByCodeType(StringBuffer, int, AdminUser, String)' has a cyclomatic complexity of 13. 3 242327
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 263
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 284290
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 385
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 386
CyclomaticComplexity The method 'getSpacesBrowser(HttpServletRequest, AdminUser, Locale, boolean, boolean, boolean)' has a cyclomatic complexity of 13. 3 436531
NPathComplexity The method 'getSpacesBrowser(HttpServletRequest, AdminUser, Locale, boolean, boolean, boolean)' has an NPath complexity of 1152 3 436531
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 441
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 441
ShortVariable Avoid variables with short names like i 3 446
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 504
LocalVariableNamingConventions The local variable name '_template' doesn't match '[a-z][a-zA-Z0-9]*' 1 525
ControlStatementBraces This statement should have braces 3 526
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 555
LinguisticNaming Linguistics Antipattern - The getter 'getSpaceParents' should not return void linguistically 3 568581
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 603

fr/paris/lutece/plugins/document/service/spaces/SpaceRemovalListenerService.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 4455

fr/paris/lutece/plugins/document/service/spaces/SpaceResourceIdService.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 7982
MissingOverride The method 'register()' is missing an @Override annotation. 3 87121
ShortVariable Avoid variables with short names like rt 3 89
ShortVariable Avoid variables with short names like p 3 95
MissingOverride The method 'getResourceIdList(Locale)' is missing an @Override annotation. 3 128131
MissingOverride The method 'getTitle(String, Locale)' is missing an @Override annotation. 3 139159

fr/paris/lutece/plugins/document/utils/ImageUtils.java

Rule Violation Priority Ligne
ShortVariable Avoid variables with short names like in 3 73

fr/paris/lutece/plugins/document/web/DocumentContentJspBean.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 101
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 101

fr/paris/lutece/plugins/document/web/DocumentDashboardComponent.java

Rule Violation Priority Ligne
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 114
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 114
ShortVariable Avoid variables with short names like t 3 121

fr/paris/lutece/plugins/document/web/DocumentJspBean.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 341984
CyclomaticComplexity The class 'DocumentJspBean' has a total cyclomatic complexity of 205 (highest 40). 3 1241984
GodClass Possible God Class (WMC=205, ATFD=321, TCC=14.225%) 3 1241984
ExcessiveClassLength Avoid really long classes. 3 1241984
TooManyMethods This class has too many methods, consider refactoring it. 3 1251984
ImmutableField Private field '_nDefaultItemsPerPage' could be made final; it is only initialized in the declaration or constructor. 3 255
CallSuperInConstructor It is a good practice to call super() in a constructor 3 263266
NcssCount The method 'getManageDocuments(HttpServletRequest)' has a NCSS line count of 70. 3 273398
ExcessiveMethodLength Avoid really long methods. 3 273398
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 275
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 306
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 306
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 341343
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 345
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 373
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 422
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 422
UnusedFormalParameter Avoid unused method parameters such as 'request'. 3 464
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 467
UnusedFormalParameter Avoid unused method parameters such as 'request'. 3 481
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 483
ConfusingTernary Avoid if (x != y) ..; else ..; 3 504
ConfusingTernary Avoid if (x != y) ..; else ..; 3 517
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 541
ConfusingTernary Avoid if (x != y) ..; else ..; 3 631632
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 633
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 633
ExcessiveMethodLength Avoid really long methods. 3 10921286
CyclomaticComplexity The method 'doActionSelectionDocument(HttpServletRequest)' has a cyclomatic complexity of 40. 3 10921286
NcssCount The method 'doActionSelectionDocument(HttpServletRequest)' has a NCSS line count of 83. 3 10921286
UnusedLocalVariable Avoid unused local variables such as 'nbDocumentsAffected'. 3 1098
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 11741177
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 12131218
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 12651270
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1410
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1410
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1443
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1443
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1472
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 1481
ExcessiveMethodLength Avoid really long methods. 3 15251680
NPathComplexity The method 'getMassArchivalDocument(HttpServletRequest)' has an NPath complexity of 2720 3 15251680
NcssCount The method 'getMassArchivalDocument(HttpServletRequest)' has a NCSS line count of 80. 3 15251680
CyclomaticComplexity The method 'getMassArchivalDocument(HttpServletRequest)' has a cyclomatic complexity of 21. 3 15251680
AvoidDuplicateLiterals The String literal "to_archive" appears 4 times in this file; the first occurrence is on line 1,538 3 1538
AvoidDuplicateLiterals The String literal "jsp/admin/plugins/document/MassArchivalDocument.jsp" appears 4 times in this file; the first occurrence is on line 1,582 3 1582
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 3 1588
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 3 1589
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1639
AddEmptyString Do not add empty strings 3 1653
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1665
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1665
ConfusingTernary Avoid if (x != y) ..; else ..; 3 17101717
ConfusingTernary Avoid if (x != y) ..; else ..; 3 17541761
ConfusingTernary Avoid if (x != y) ..; else ..; 3 17891796
ConfusingTernary Avoid if (x != y) ..; else ..; 3 18251833
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1898
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1898
SimplifyBooleanReturns Avoid unnecessary if..then..else statements when returning booleans 3 19171923
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 3 1950

fr/paris/lutece/plugins/document/web/DocumentLegacyServletRedirectFilter.java

Rule Violation Priority Ligne
MissingOverride The method 'doFilter(ServletRequest, ServletResponse, FilterChain)' is missing an @Override annotation. 3 6891
ConfusingTernary Avoid if (x != y) ..; else ..; 3 7380

fr/paris/lutece/plugins/document/web/DocumentMetaPageInclude.java

Rule Violation Priority Ligne
MissingOverride The method 'fillTemplate(Map, PageData, int, HttpServletRequest)' is missing an @Override annotation. 3 74102
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 8697
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'sourceXsl' 3 113

fr/paris/lutece/plugins/document/web/DocumentResourceServlet.java

Rule Violation Priority Ligne
FieldNamingConventions The constant name '_cache' doesn't match '[A-Z][A-Z_0-9]*' 1 75
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 154
ConfusingTernary Avoid if (x != y) ..; else ..; 3 202211
ConfusingTernary Avoid if (x != y) ..; else ..; 3 284303
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 315
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 315
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 316
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 316

fr/paris/lutece/plugins/document/web/DocumentServiceJspBean.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34439
MissingOverride The method 'getInsertServiceSelectorUI(HttpServletRequest)' is missing an @Override annotation. 3 159162
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 259
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 380
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 381
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 382
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 383
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 383
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 385
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 433
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 433

fr/paris/lutece/plugins/document/web/DocumentTypeJspBean.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 341018
GodClass Possible God Class (WMC=91, ATFD=176, TCC=24.923%) 3 881018
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 881018
CyclomaticComplexity The class 'DocumentTypeJspBean' has a total cyclomatic complexity of 91 (highest 11). 3 881018
TooManyMethods This class has too many methods, consider refactoring it. 3 891018
SingularField Perhaps '_nDefaultItemsPerPage' could be replaced by a local variable. 3 161
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 172
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 172
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 189
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 189
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 207
ConfusingTernary Avoid if (x != y) ..; else ..; 3 247254
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 264
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 264
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 282
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 284
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 285
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 286
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 288
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 289
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 329
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 329
LinguisticNaming Linguistics Antipattern - The getter 'getAttributeData' should not return void linguistically 3 460513
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 3 463
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 469
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 3 522
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 541
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 586
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 616617
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 619
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 619
AddEmptyString Do not add empty strings 3 645
AvoidLiteralsInIfCondition Avoid using Literals in Conditional Statements 3 743
CyclomaticComplexity The method 'getStyleSheets(MultipartHttpServletRequest)' has a cyclomatic complexity of 11. 3 821875
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 823
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 827
ConfusingTernary Avoid if (x != y) ..; else ..; 3 890897
LinguisticNaming Linguistics Antipattern - The method 'isValid' indicates linguistically it returns a boolean, but it returns 'String' 3 920937
ShortVariable Avoid variables with short names like is 3 928
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 931

fr/paris/lutece/plugins/document/web/ResourceServletCache.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 5154
MissingOverride The method 'getName()' is missing an @Override annotation. 3 6063
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the removeFromKeyPattern method if you want a default access modifier 3 89100
DefaultPackage Use explicit scoping instead of the default package private level 3 89100

fr/paris/lutece/plugins/document/web/ResourceServletContentTypeCache.java

Rule Violation Priority Ligne
CallSuperInConstructor It is a good practice to call super() in a constructor 3 5362
PositionLiteralsFirstInCaseInsensitiveComparisons Position literals first in String comparisons for EqualsIgnoreCase 3 57
MissingOverride The method 'getName()' is missing an @Override annotation. 3 6871

fr/paris/lutece/plugins/document/web/ResourceValueObject.java

Rule Violation Priority Ligne
UncommentedEmptyConstructor Document empty constructor 3 5961
MethodReturnsInternalArray Returning '_content' may expose an internal array. 3 104
ArrayIsStoredDirectly The user-supplied array 'content' is stored directly. 3 111

fr/paris/lutece/plugins/document/web/category/CategoryJspBean.java

Rule Violation Priority Ligne
UnnecessaryConstructor Avoid unnecessary constructors - the compiler will generate these for you 3 116118
UncommentedEmptyConstructor Document empty constructor 3 116118
CallSuperInConstructor It is a good practice to call super() in a constructor 3 116118
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 131
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 150
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 150
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 171
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 174
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 177
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 229
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 229
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 246
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 247
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 248
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 249
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 250

fr/paris/lutece/plugins/document/web/docsearch/AdvancedSearch.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 70253
CyclomaticComplexity The method 'getPage(HttpServletRequest, int, Plugin)' has a cyclomatic complexity of 17. 3 100211
MissingOverride The method 'getPage(HttpServletRequest, int, Plugin)' is missing an @Override annotation. 3 100211
NPathComplexity The method 'getPage(HttpServletRequest, int, Plugin)' has an NPath complexity of 1409 3 100211
ExcessiveMethodLength Avoid really long methods. 3 100211
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 104
ConfusingTernary Avoid if (x != y) ..; else ..; 3 109199
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 145
ShortVariable Avoid variables with short names like i 3 148
ShortVariable Avoid variables with short names like c 3 156
ShortVariable Avoid variables with short names like it 3 157
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 177
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 191
SimpleDateFormatNeedsLocale When instantiating a SimpleDateFormat object, specify a Locale 3 220
ShortVariable Avoid variables with short names like f 3 220

fr/paris/lutece/plugins/document/web/docsearch/DocSearchJspBean.java

Rule Violation Priority Ligne
NPathComplexity The method 'getSearch(HttpServletRequest)' has an NPath complexity of 408 3 105211
NcssCount The method 'getSearch(HttpServletRequest)' has a NCSS line count of 61. 3 105211
ExcessiveMethodLength Avoid really long methods. 3 105211
CyclomaticComplexity The method 'getSearch(HttpServletRequest)' has a cyclomatic complexity of 11. 3 105211
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 112
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 112
ConfusingTernary Avoid if (x != y) ..; else ..; 3 125
ConfusingTernary Avoid if (x != y) ..; else ..; 3 129
ConfusingTernary Avoid if (x != y) ..; else ..; 3 137188
ConfusingTernary Avoid if (x != y) ..; else ..; 3 162171
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 198199

fr/paris/lutece/plugins/document/web/history/DocumentHistoryJspBean.java

Rule Violation Priority Ligne
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 92
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 95
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 95

fr/paris/lutece/plugins/document/web/portlet/DocumentListPortletJspBean.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreate(HttpServletRequest)' is missing an @Override annotation. 3 105116
MissingOverride The method 'getModify(HttpServletRequest)' is missing an @Override annotation. 3 124137
MissingOverride The method 'doCreate(HttpServletRequest)' is missing an @Override annotation. 3 145175
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 149
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 152
MissingOverride The method 'doModify(HttpServletRequest)' is missing an @Override annotation. 3 183230
LinguisticNaming Linguistics Antipattern - The setter 'setIdCategory' should not return any type except void linguistically 3 237255
ShortVariable Avoid variables with short names like i 3 244
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 277
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 277
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 295
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 312
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 312

fr/paris/lutece/plugins/document/web/portlet/DocumentPortletJspBean.java

Rule Violation Priority Ligne
MissingOverride The method 'getCreate(HttpServletRequest)' is missing an @Override annotation. 3 107118
MissingOverride The method 'getModify(HttpServletRequest)' is missing an @Override annotation. 3 126139
MissingOverride The method 'doCreate(HttpServletRequest)' is missing an @Override annotation. 3 147177
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 151
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 154
MissingOverride The method 'doModify(HttpServletRequest)' is missing an @Override annotation. 3 185231
LinguisticNaming Linguistics Antipattern - The setter 'setIdCategory' should not return any type except void linguistically 3 238256
ShortVariable Avoid variables with short names like i 3 245
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 278
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 278
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 296
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 313
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 313

fr/paris/lutece/plugins/document/web/publishing/DocumentPublishingJspBean.java

Rule Violation Priority Ligne
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 341171
ExcessiveClassLength Avoid really long classes. 3 931171
CyclomaticComplexity The class 'DocumentPublishingJspBean' has a total cyclomatic complexity of 110 (highest 21). 3 931171
FieldNamingConventions The constant name 'MARk_DOCUMENT_LIST_PORTLET_LIST' doesn't match '[A-Z][A-Z_0-9]*' 1 147
NPathComplexity The method 'getManageDocumentPublishing(HttpServletRequest)' has an NPath complexity of 4322 3 181299
NcssCount The method 'getManageDocumentPublishing(HttpServletRequest)' has a NCSS line count of 61. 3 181299
CyclomaticComplexity The method 'getManageDocumentPublishing(HttpServletRequest)' has a cyclomatic complexity of 21. 3 181299
ExcessiveMethodLength Avoid really long methods. 3 181299
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 194
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 194
ConfusingTernary Avoid if (x != y) ..; else ..; 3 204205
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 221224
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 244
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 246262
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 255
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 327
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listFilteredPortlets' 3 340
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 369
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'listFilteredPortlets' 3 381
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 395
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 406
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 406
CyclomaticComplexity The method 'doAssignedDocument(HttpServletRequest)' has a cyclomatic complexity of 11. 3 436496
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 445
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 463
ConfusingTernary Avoid if (x != y) ..; else ..; 3 513520
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 535
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 536
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 546
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 546
TooFewBranchesForASwitchStatement A switch with less than three branches is inefficient, use a if statement instead. 3 572579
MissingBreakInSwitch A switch statement does not contain a break 3 604621
TooFewBranchesForASwitchStatement A switch with less than three branches is inefficient, use a if statement instead. 3 604621
ConfusingTernary Avoid if (x != y) ..; else ..; 3 624632
TooFewBranchesForASwitchStatement A switch with less than three branches is inefficient, use a if statement instead. 3 665683
MissingBreakInSwitch A switch statement does not contain a break 3 665683
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 768
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 768
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 883
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 883
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 928
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 928
UnusedFormalParameter Avoid unused method parameters such as 'request'. 3 1039
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1049
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1049
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1065
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1065
UnusedFormalParameter Avoid unused method parameters such as 'request'. 3 1089
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1092
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 1102
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 1102
ConfusingTernary Avoid if (x != y) ..; else ..; 3 1109
LinguisticNaming Linguistics Antipattern - The setter 'setFillFilter' should not return any type except void linguistically 3 11321170
ConfusingTernary Avoid if (x != y) ..; else ..; 3 11371167

fr/paris/lutece/plugins/document/web/rules/DocumentRulesJspBean.java

Rule Violation Priority Ligne
FieldNamingConventions The field name '_StrRuleAttributeSelected' doesn't match '_[a-z][a-zA-Z0-9]*' 1 92
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 142
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 153
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 153
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 179
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 179
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 233
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 233

fr/paris/lutece/plugins/document/web/spaces/DocumentSpaceJspBean.java

Rule Violation Priority Ligne
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
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 162
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 197
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 197
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 254
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 255
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 258
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 259
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 260
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 262
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 263
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 282285
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 304
UseCollectionIsEmpty Substitute calls to size() == 0 (or size() != 0, size() > 0, size() < 1) with calls to isEmpty() 3 315
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 328
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 385
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 386
ConfusingTernary Avoid if (x != y) ..; else ..; 3 389396
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 403
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 403
CyclomaticComplexity The method 'doMoveSpace(HttpServletRequest)' has a cyclomatic complexity of 10. 3 421471