Fork me on GitHub

PMD Results

The following document contains the results of PMD 6.13.0.

Violations By Priority

Priority 1

fr/paris/lutece/plugins/broadcastproxy/business/Feed.java

Rule Violation Line
FormalParameterNamingConventions The method parameter name '_type' doesn't match '[a-z][a-zA-Z0-9]*' 71
FormalParameterNamingConventions The method parameter name '_id' doesn't match '[a-z][a-zA-Z0-9]*' 71
FormalParameterNamingConventions The method parameter name '_name' doesn't match '[a-z][a-zA-Z0-9]*' 71
FormalParameterNamingConventions The method parameter name '_name' doesn't match '[a-z][a-zA-Z0-9]*' 94
FormalParameterNamingConventions The method parameter name '_id' doesn't match '[a-z][a-zA-Z0-9]*' 114
FormalParameterNamingConventions The method parameter name '_description' doesn't match '[a-z][a-zA-Z0-9]*' 134
FormalParameterNamingConventions The method parameter name '_type' doesn't match '[a-z][a-zA-Z0-9]*' 154
FormalParameterNamingConventions The method parameter name '_data' doesn't match '[a-z][a-zA-Z0-9]*' 174
FormalParameterNamingConventions The method parameter name '_active' doesn't match '[a-z][a-zA-Z0-9]*' 194

fr/paris/lutece/plugins/broadcastproxy/business/ISubscriptionLinkDAO.java

Rule Violation Line
FormalParameterNamingConventions The method parameter name '_plugin' doesn't match '[a-z][a-zA-Z0-9]*' 114

fr/paris/lutece/plugins/broadcastproxy/business/Subscription.java

Rule Violation Line
FormalParameterNamingConventions The method parameter name '_description' doesn't match '[a-z][a-zA-Z0-9]*' 228

fr/paris/lutece/plugins/broadcastproxy/business/SubscriptionLink.java

Rule Violation Line
FormalParameterNamingConventions The method parameter name '_nGroupId' doesn't match '[a-z][a-zA-Z0-9]*' 189

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistAPI.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 149
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 173
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 268
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 322
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 405

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistConstants.java

Rule Violation Line
ClassNamingConventions The utility class name 'DolistConstants' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 3643
FieldNamingConventions The static field name 'TYPE_SUBSCRIPTION' doesn't match '_[a-z][a-zA-Z0-9]*' 38
FieldNamingConventions The static field name 'TYPE_INTEREST' doesn't match '_[a-z][a-zA-Z0-9]*' 39
FieldNamingConventions The static field name 'NO_GROUP_NAME' doesn't match '_[a-z][a-zA-Z0-9]*' 41

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistProvider.java

Rule Violation Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 57462

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastCacheService.java

Rule Violation Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 47107

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastService.java

Rule Violation Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 48187

fr/paris/lutece/plugins/broadcastproxy/service/Constants.java

Rule Violation Line
ClassNamingConventions The utility class name 'Constants' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 3643
FieldNamingConventions The static field name 'TYPE_ALERT' doesn't match '_[a-z][a-zA-Z0-9]*' 38
FieldNamingConventions The static field name 'TYPE_NEWSLETTER' doesn't match '_[a-z][a-zA-Z0-9]*' 39
FieldNamingConventions The static field name 'ACTION_ADD' doesn't match '_[a-z][a-zA-Z0-9]*' 40
FieldNamingConventions The static field name 'ACTION_DELETE' doesn't match '_[a-z][a-zA-Z0-9]*' 41

Priority 3

fr/paris/lutece/plugins/broadcastproxy/business/Feed.java

Rule Violation Line
DataClass The class 'Feed' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=12, WMC=14) 47199

fr/paris/lutece/plugins/broadcastproxy/business/IBroadcastProvider.java

Rule Violation Line
CommentRequired Header comments are required 41115
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 59
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 69
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 78
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 88

fr/paris/lutece/plugins/broadcastproxy/business/Subscription.java

Rule Violation Line
DataClass The class 'Subscription' is suspected to be a Data Class (WOC=17.647%, NOPA=0, NOAM=14, WMC=18) 48233
ControlStatementBraces This statement should have braces 209

fr/paris/lutece/plugins/broadcastproxy/business/SubscriptionLinkDAO.java

Rule Violation Line
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 247249

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistAPI.java

Rule Violation Line
CommentRequired Header comments are required 52492
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 112
CyclomaticComplexity The method 'getDolistContactId(String, String)' has a cyclomatic complexity of 10. 112177
ControlStatementBraces This statement should have braces 115
ControlStatementBraces This statement should have braces 118
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 121
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 169
AvoidDuplicateLiterals The String literal "' : " appears 5 times in this file; the first occurrence is on line 171 171
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 173
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 190
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 240
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 268
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 283
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
ControlStatementBraces This statement should have braces 292
PositionLiteralsFirstInComparisons Position literals first in String comparisons 295
ControlStatementBraces This statement should have braces 296
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 322
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 339
PositionLiteralsFirstInComparisons Position literals first in String comparisons 348
PositionLiteralsFirstInComparisons Position literals first in String comparisons 348
ControlStatementBraces This statement should have braces 349
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 360
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'response' 371
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 374
CommentRequired Public method and constructor comments are required 374409
PositionLiteralsFirstInComparisons Position literals first in String comparisons 383
ControlStatementBraces This statement should have braces 384
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 405
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 476

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistConstants.java

Rule Violation Line
CommentRequired Header comments are required 3643

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistHttpAccess.java

Rule Violation Line
CommentRequired Header comments are required 57285
CommentRequired Public method and constructor comments are required 63104
AvoidDuplicateLiterals The String literal "' : " appears 4 times in this file; the first occurrence is on line 93 93
AvoidDuplicateLiterals The String literal "strError" appears 4 times in this file; the first occurrence is on line 95 95
CommentRequired Public method and constructor comments are required 106159
CommentRequired Public method and constructor comments are required 161215
CommentRequired Public method and constructor comments are required 217259
AssignmentInOperand Avoid assignments in operands 277

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistProvider.java

Rule Violation Line
MissingStaticMethodInNonInstantiatableClass Class cannot be instantiated and does not provide any static methods or fields 57462
CommentRequired Header comments are required 57462
ImmutableField Private field '_dolistAPI' could be made final; it is only initialized in the declaration or constructor. 77
ImmutableField Private field '_groupViewRang' could be made final; it is only initialized in the declaration or constructor. 79
LooseCoupling Avoid using implementation types like 'TreeMap'; use the interface instead 79
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 80
ImmutableField Private field '_groupsMapIdName' could be made final; it is only initialized in the declaration or constructor. 80
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 82
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 89
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 109
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 143
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 155
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 186
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 195
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 216
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 216
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 246
CommentRequired Public method and constructor comments are required 253271
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 253
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 256
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 264
CyclomaticComplexity The method 'initMapIdName(String)' has a cyclomatic complexity of 13. 278346
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 278
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 301
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 302
PositionLiteralsFirstInComparisons Position literals first in String comparisons 322
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 341
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 353
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 397
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 454

fr/paris/lutece/plugins/broadcastproxy/business/providers/mock/MockProvider.java

Rule Violation Line
CommentRequired Header comments are required 47148
UnusedPrivateField Avoid unused private fields such as 'DEFAULT_USER_SUBSCRIPTIONS_JSON'. 50
UnusedPrivateField Avoid unused private fields such as 'DEFAULT_USER_SUBSCRIPTIONS_MAP'. 51
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 60
CommentRequired Public method and constructor comments are required 7376
MissingOverride The method 'getFeeds()' is missing an @Override annotation. 85112
CommentRequired Public method and constructor comments are required 85112
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 95

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastCacheService.java

Rule Violation Line
CallSuperInConstructor It is a good practice to call super() in a constructor 5659
NonThreadSafeSingleton Singleton is not thread safe 6770
CommentRequired Public method and constructor comments are required 8288
CommentRequired Public method and constructor comments are required 9093
CommentRequired Public method and constructor comments are required 9598
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 20 characters appended. 102
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 103

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastDaemon.java

Rule Violation Line
CyclomaticComplexity The method 'loadSubscription(String)' has a cyclomatic complexity of 10. 77131
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 85
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 126

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastService.java

Rule Violation Line
CommentRequired Header comments are required 48187
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 7887
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 95102
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 111
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 124
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 137
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 150

fr/paris/lutece/plugins/broadcastproxy/service/Constants.java

Rule Violation Line
CommentRequired Header comments are required 3643

fr/paris/lutece/plugins/broadcastproxy/web/AbstractManageSubscriptionJspBean.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 50110
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the getItemsFromIds method if you want a default access modifier 109
DefaultPackage Use explicit scoping instead of the default package private level 109

fr/paris/lutece/plugins/broadcastproxy/web/BroadcastproxyJspBean.java

Rule Violation Line
DefaultPackage Use explicit scoping instead of the default package private level 95
RedundantFieldInitializer Avoid using redundant field initializer for '_subscriptionTypes' 95
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _subscriptionTypes field if you want a default access modifier 95
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _subscriptionFeeds field if you want a default access modifier 96
RedundantFieldInitializer Avoid using redundant field initializer for '_subscriptionFeeds' 96
DefaultPackage Use explicit scoping instead of the default package private level 96
DefaultPackage Use explicit scoping instead of the default package private level 97
RedundantFieldInitializer Avoid using redundant field initializer for '_currentFeedType' 97
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _currentFeedType field if you want a default access modifier 97
AvoidDuplicateLiterals The String literal "Invalid subscription type" appears 4 times in this file; the first occurrence is on line 123 123
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 142
UnnecessaryAnnotationValueElement Avoid the use of value in annotations when its the only element 162
CyclomaticComplexity The method 'doUpdateUserSubscribtions(HttpServletRequest)' has a cyclomatic complexity of 15. 163261
NPathComplexity The method 'doUpdateUserSubscribtions(HttpServletRequest)' has an NPath complexity of 409 163261
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 216217
ControlStatementBraces This statement should have braces 217
UseIndexOfChar String.indexOf(char) is faster than String.indexOf(String). 225
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 230233
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 253
UnnecessaryAnnotationValueElement Avoid the use of value in annotations when its the only element 270
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 312
UnnecessaryAnnotationValueElement Avoid the use of value in annotations when its the only element 329
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 371
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 391
ShortVariable Avoid variables with short names like i 397
ControlStatementBraces This statement should have braces 401

fr/paris/lutece/plugins/broadcastproxy/web/BroadcastproxyXPage.java

Rule Violation Line
ConfusingTernary Avoid if (x != y) ..; else ..; 104120
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 140
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 171
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'xpage' 180
ControlStatementBraces This statement should have braces 226
ShortVariable Avoid variables with short names like sb 231
ControlStatementBraces This statement should have braces 235236
AssignmentInOperand Avoid assignments in operands 235
PositionLiteralsFirstInComparisons Position literals first in String comparisons 271
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 282

fr/paris/lutece/plugins/broadcastproxy/web/MyDashboardBroadcastproxy.java

Rule Violation Line
CommentRequired Header comments are required 60162
ImmutableField Private field '_listInfos' could be made final; it is only initialized in the declaration or constructor. 76
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 92
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 109112
ShortVariable Avoid variables with short names like t 122

fr/paris/lutece/plugins/broadcastproxy/web/SubscriptionLinkJspBean.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 72382
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 137
DefaultPackage Use explicit scoping instead of the default package private level 158167
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the getItemsFromIds method if you want a default access modifier 159167
ConfusingTernary Avoid if (x != y) ..; else ..; 186
CommentRequired Public method and constructor comments are required 356380

Priority 4

fr/paris/lutece/plugins/broadcastproxy/business/Feed.java

Rule Violation Line
ShortClassName Avoid short class names like Feed 47199

fr/paris/lutece/plugins/broadcastproxy/business/IBroadcastProvider.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'java.util.Map' 37

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastService.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'java.util.Map' 37

Files

fr/paris/lutece/plugins/broadcastproxy/business/Feed.java

Rule Violation Priority Line
DataClass The class 'Feed' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=12, WMC=14) 3 47199
ShortClassName Avoid short class names like Feed 4 47199
FormalParameterNamingConventions The method parameter name '_type' doesn't match '[a-z][a-zA-Z0-9]*' 1 71
FormalParameterNamingConventions The method parameter name '_id' doesn't match '[a-z][a-zA-Z0-9]*' 1 71
FormalParameterNamingConventions The method parameter name '_name' doesn't match '[a-z][a-zA-Z0-9]*' 1 71
FormalParameterNamingConventions The method parameter name '_name' doesn't match '[a-z][a-zA-Z0-9]*' 1 94
FormalParameterNamingConventions The method parameter name '_id' doesn't match '[a-z][a-zA-Z0-9]*' 1 114
FormalParameterNamingConventions The method parameter name '_description' doesn't match '[a-z][a-zA-Z0-9]*' 1 134
FormalParameterNamingConventions The method parameter name '_type' doesn't match '[a-z][a-zA-Z0-9]*' 1 154
FormalParameterNamingConventions The method parameter name '_data' doesn't match '[a-z][a-zA-Z0-9]*' 1 174
FormalParameterNamingConventions The method parameter name '_active' doesn't match '[a-z][a-zA-Z0-9]*' 1 194

fr/paris/lutece/plugins/broadcastproxy/business/IBroadcastProvider.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'java.util.Map' 4 37
CommentRequired Header comments are required 3 41115
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 59
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 69
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 78
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 88

fr/paris/lutece/plugins/broadcastproxy/business/ISubscriptionLinkDAO.java

Rule Violation Priority Line
FormalParameterNamingConventions The method parameter name '_plugin' doesn't match '[a-z][a-zA-Z0-9]*' 1 114

fr/paris/lutece/plugins/broadcastproxy/business/Subscription.java

Rule Violation Priority Line
DataClass The class 'Subscription' is suspected to be a Data Class (WOC=17.647%, NOPA=0, NOAM=14, WMC=18) 3 48233
ControlStatementBraces This statement should have braces 3 209
FormalParameterNamingConventions The method parameter name '_description' doesn't match '[a-z][a-zA-Z0-9]*' 1 228

fr/paris/lutece/plugins/broadcastproxy/business/SubscriptionLink.java

Rule Violation Priority Line
FormalParameterNamingConventions The method parameter name '_nGroupId' doesn't match '[a-z][a-zA-Z0-9]*' 1 189

fr/paris/lutece/plugins/broadcastproxy/business/SubscriptionLinkDAO.java

Rule Violation Priority Line
ForLoopCanBeForeach This for loop can be replaced by a foreach loop 3 247249

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistAPI.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 52492
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 112
CyclomaticComplexity The method 'getDolistContactId(String, String)' has a cyclomatic complexity of 10. 3 112177
ControlStatementBraces This statement should have braces 3 115
ControlStatementBraces This statement should have braces 3 118
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 121
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 149
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 169
AvoidDuplicateLiterals The String literal "' : " appears 5 times in this file; the first occurrence is on line 171 3 171
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 173
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 173
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 190
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 240
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 268
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 268
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 283
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
ControlStatementBraces This statement should have braces 3 292
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 295
ControlStatementBraces This statement should have braces 3 296
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 322
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 322
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 339
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 348
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 348
ControlStatementBraces This statement should have braces 3 349
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 360
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'response' 3 371
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 374
CommentRequired Public method and constructor comments are required 3 374409
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 383
ControlStatementBraces This statement should have braces 3 384
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 405
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 405
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 476

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistConstants.java

Rule Violation Priority Line
ClassNamingConventions The utility class name 'DolistConstants' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 1 3643
CommentRequired Header comments are required 3 3643
FieldNamingConventions The static field name 'TYPE_SUBSCRIPTION' doesn't match '_[a-z][a-zA-Z0-9]*' 1 38
FieldNamingConventions The static field name 'TYPE_INTEREST' doesn't match '_[a-z][a-zA-Z0-9]*' 1 39
FieldNamingConventions The static field name 'NO_GROUP_NAME' doesn't match '_[a-z][a-zA-Z0-9]*' 1 41

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistHttpAccess.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 57285
CommentRequired Public method and constructor comments are required 3 63104
AvoidDuplicateLiterals The String literal "' : " appears 4 times in this file; the first occurrence is on line 93 3 93
AvoidDuplicateLiterals The String literal "strError" appears 4 times in this file; the first occurrence is on line 95 3 95
CommentRequired Public method and constructor comments are required 3 106159
CommentRequired Public method and constructor comments are required 3 161215
CommentRequired Public method and constructor comments are required 3 217259
AssignmentInOperand Avoid assignments in operands 3 277

fr/paris/lutece/plugins/broadcastproxy/business/providers/dolist/DolistProvider.java

Rule Violation Priority Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 57462
MissingStaticMethodInNonInstantiatableClass Class cannot be instantiated and does not provide any static methods or fields 3 57462
CommentRequired Header comments are required 3 57462
ImmutableField Private field '_dolistAPI' could be made final; it is only initialized in the declaration or constructor. 3 77
ImmutableField Private field '_groupViewRang' could be made final; it is only initialized in the declaration or constructor. 3 79
LooseCoupling Avoid using implementation types like 'TreeMap'; use the interface instead 3 79
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 80
ImmutableField Private field '_groupsMapIdName' could be made final; it is only initialized in the declaration or constructor. 3 80
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 82
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 89
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 109
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 143
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 155
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 186
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 195
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 216
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 216
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 246
CommentRequired Public method and constructor comments are required 3 253271
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 253
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 256
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 264
CyclomaticComplexity The method 'initMapIdName(String)' has a cyclomatic complexity of 13. 3 278346
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 278
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 301
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 302
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 322
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 341
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 353
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 397
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 454

fr/paris/lutece/plugins/broadcastproxy/business/providers/mock/MockProvider.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 47148
UnusedPrivateField Avoid unused private fields such as 'DEFAULT_USER_SUBSCRIPTIONS_JSON'. 3 50
UnusedPrivateField Avoid unused private fields such as 'DEFAULT_USER_SUBSCRIPTIONS_MAP'. 3 51
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 60
CommentRequired Public method and constructor comments are required 3 7376
MissingOverride The method 'getFeeds()' is missing an @Override annotation. 3 85112
CommentRequired Public method and constructor comments are required 3 85112
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 95

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastCacheService.java

Rule Violation Priority Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 47107
CallSuperInConstructor It is a good practice to call super() in a constructor 3 5659
NonThreadSafeSingleton Singleton is not thread safe 3 6770
CommentRequired Public method and constructor comments are required 3 8288
CommentRequired Public method and constructor comments are required 3 9093
CommentRequired Public method and constructor comments are required 3 9598
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 20 characters appended. 3 102
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 103

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastDaemon.java

Rule Violation Priority Line
CyclomaticComplexity The method 'loadSubscription(String)' has a cyclomatic complexity of 10. 3 77131
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 85
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 126

fr/paris/lutece/plugins/broadcastproxy/service/BroadcastService.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'java.util.Map' 4 37
CommentRequired Header comments are required 3 48187
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 48187
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 7887
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 95102
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 111
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 124
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 137
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 150

fr/paris/lutece/plugins/broadcastproxy/service/Constants.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 3643
ClassNamingConventions The utility class name 'Constants' doesn't match '[A-Z][a-zA-Z0-9]+(Utils?|Helper|Home|Service)' 1 3643
FieldNamingConventions The static field name 'TYPE_ALERT' doesn't match '_[a-z][a-zA-Z0-9]*' 1 38
FieldNamingConventions The static field name 'TYPE_NEWSLETTER' doesn't match '_[a-z][a-zA-Z0-9]*' 1 39
FieldNamingConventions The static field name 'ACTION_ADD' doesn't match '_[a-z][a-zA-Z0-9]*' 1 40
FieldNamingConventions The static field name 'ACTION_DELETE' doesn't match '_[a-z][a-zA-Z0-9]*' 1 41

fr/paris/lutece/plugins/broadcastproxy/web/AbstractManageSubscriptionJspBean.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 50110
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the getItemsFromIds method if you want a default access modifier 3 109
DefaultPackage Use explicit scoping instead of the default package private level 3 109

fr/paris/lutece/plugins/broadcastproxy/web/BroadcastproxyJspBean.java

Rule Violation Priority Line
DefaultPackage Use explicit scoping instead of the default package private level 3 95
RedundantFieldInitializer Avoid using redundant field initializer for '_subscriptionTypes' 3 95
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _subscriptionTypes field if you want a default access modifier 3 95
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _subscriptionFeeds field if you want a default access modifier 3 96
RedundantFieldInitializer Avoid using redundant field initializer for '_subscriptionFeeds' 3 96
DefaultPackage Use explicit scoping instead of the default package private level 3 96
DefaultPackage Use explicit scoping instead of the default package private level 3 97
RedundantFieldInitializer Avoid using redundant field initializer for '_currentFeedType' 3 97
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _currentFeedType field if you want a default access modifier 3 97
AvoidDuplicateLiterals The String literal "Invalid subscription type" appears 4 times in this file; the first occurrence is on line 123 3 123
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 142
UnnecessaryAnnotationValueElement Avoid the use of value in annotations when its the only element 3 162
CyclomaticComplexity The method 'doUpdateUserSubscribtions(HttpServletRequest)' has a cyclomatic complexity of 15. 3 163261
NPathComplexity The method 'doUpdateUserSubscribtions(HttpServletRequest)' has an NPath complexity of 409 3 163261
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 216217
ControlStatementBraces This statement should have braces 3 217
UseIndexOfChar String.indexOf(char) is faster than String.indexOf(String). 3 225
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 230233
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 253
UnnecessaryAnnotationValueElement Avoid the use of value in annotations when its the only element 3 270
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 312
UnnecessaryAnnotationValueElement Avoid the use of value in annotations when its the only element 3 329
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 371
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 391
ShortVariable Avoid variables with short names like i 3 397
ControlStatementBraces This statement should have braces 3 401

fr/paris/lutece/plugins/broadcastproxy/web/BroadcastproxyXPage.java

Rule Violation Priority Line
ConfusingTernary Avoid if (x != y) ..; else ..; 3 104120
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 140
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 171
UnnecessaryLocalBeforeReturn Consider simply returning the value vs storing it in local variable 'xpage' 3 180
ControlStatementBraces This statement should have braces 3 226
ShortVariable Avoid variables with short names like sb 3 231
ControlStatementBraces This statement should have braces 3 235236
AssignmentInOperand Avoid assignments in operands 3 235
PositionLiteralsFirstInComparisons Position literals first in String comparisons 3 271
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 282

fr/paris/lutece/plugins/broadcastproxy/web/MyDashboardBroadcastproxy.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 60162
ImmutableField Private field '_listInfos' could be made final; it is only initialized in the declaration or constructor. 3 76
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 92
AvoidDeeplyNestedIfStmts Deeply nested if..then statements are hard to read 3 109112
ShortVariable Avoid variables with short names like t 3 122

fr/paris/lutece/plugins/broadcastproxy/web/SubscriptionLinkJspBean.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 72382
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 137
DefaultPackage Use explicit scoping instead of the default package private level 3 158167
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the getItemsFromIds method if you want a default access modifier 3 159167
ConfusingTernary Avoid if (x != y) ..; else ..; 3 186
CommentRequired Public method and constructor comments are required 3 356380