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/easyrulesbot/util/FileUtils.java

Rule Violation Ligne
AvoidFileStream Avoid instantiating FileInputStream, FileOutputStream, FileReader, or FileWriter 79
AvoidFileStream Avoid instantiating FileInputStream, FileOutputStream, FileReader, or FileWriter 118

Priority 2

fr/paris/lutece/plugins/easyrulesbot/service/response/filters/StopOnWordFilter.java

Rule Violation Ligne
AvoidReassigningParameters Avoid reassigning parameters such as 'locale' 129

fr/paris/lutece/plugins/easyrulesbot/service/yaml/YamlBotLoader.java

Rule Violation Ligne
GuardLogStatement Logger calls should be surrounded by log level guards. 86
GuardLogStatement Logger calls should be surrounded by log level guards. 101
GuardLogStatement Logger calls should be surrounded by log level guards. 176

Priority 3

fr/paris/lutece/plugins/easyrulesbot/service/bot/BotExecutor.java

Rule Violation Ligne
ImmutableField Private field '_bot' could be made final; it is only initialized in the declaration or constructor. 66
ImmutableField Private field '_locale' could be made final; it is only initialized in the declaration or constructor. 67
ImmutableField Private field '_mapData' could be made final; it is only initialized in the declaration or constructor. 69
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 69
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 178193
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 180

fr/paris/lutece/plugins/easyrulesbot/service/bot/EasyRulesBot.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 53175
UnusedPrivateField Avoid unused private fields such as 'PROPERTY_LAST_MESSAGE'. 55
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 57
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 32, but has at least 100 characters appended. 159
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 159
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 160
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 161
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 162
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 163
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 164
ShortVariable Avoid variables with short names like br 168

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/BotRule.java

Rule Violation Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 215
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 219
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 379
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 25, but has at least 105 characters appended. 379
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 380
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 381
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 382
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 383
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 384

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/AbstractCondition.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 4290
FieldDeclarationsShouldBeAtStartOfClass Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. 68

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/ConditionsService.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. 4673
NonThreadSafeSingleton Singleton is not thread safe 5967

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/DataMissingCondition.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 4488
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 81

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/DataValueCondition.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 4171
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 59 characters appended. 62
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 65

fr/paris/lutece/plugins/easyrulesbot/service/response/exceptions/InvalidResponseException.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3951

fr/paris/lutece/plugins/easyrulesbot/service/response/exceptions/ResponseNotUnderstoodException.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3951

fr/paris/lutece/plugins/easyrulesbot/service/response/filters/FiltersService.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. 4669
NonThreadSafeSingleton Singleton is not thread safe 5866

fr/paris/lutece/plugins/easyrulesbot/service/response/filters/StopOnWordFilter.java

Rule Violation Ligne
DataClass The class 'StopOnWordFilter' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=13) 51191
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 56
ImmutableField Private field '_mapLocaleStopWordsList' could be made final; it is only initialized in the declaration or constructor. 56
ImmutableField Private field '_mapLocaleResponseMessageList' could be made final; it is only initialized in the declaration or constructor. 58
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 58
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 109
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 131
ConfusingTernary Avoid if (x != y) ..; else ..; 144154
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 173

fr/paris/lutece/plugins/easyrulesbot/service/response/processors/InputStringResponseProcessor.java

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

fr/paris/lutece/plugins/easyrulesbot/service/response/processors/MultipleValuesResponseProcessor.java

Rule Violation Ligne
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 104
ConfusingTernary Avoid if (x != y) ..; else ..; 148155

fr/paris/lutece/plugins/easyrulesbot/service/response/processors/ProcessorsService.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. 4669
NonThreadSafeSingleton Singleton is not thread safe 5866

fr/paris/lutece/plugins/easyrulesbot/service/yaml/YamlBotLoader.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. 67202
CommentRequired Public method and constructor comments are required 7193
CommentRequired Public method and constructor comments are required 95103
CyclomaticComplexity The method 'createBot(YamlBot)' has a cyclomatic complexity of 11. 114179
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 123
NonThreadSafeSingleton Singleton is not thread safe 183190
CommentRequired Header comments are required 194201

fr/paris/lutece/plugins/easyrulesbot/service/yaml/YamlBotLoadingException.java

Rule Violation Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 4053

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlBot.java

Rule Violation Ligne
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 249
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 32, but has at least 118 characters appended. 249
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 250
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 251
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 252
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 253
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 254
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 255

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlCondition.java

Rule Violation Ligne
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 32, but has at least 50 characters appended. 94
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. 95
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 101

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlRule.java

Rule Violation Ligne
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 271
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 25, but has at least 105 characters appended. 271
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 272
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 273
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 274
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 275
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 276

fr/paris/lutece/plugins/easyrulesbot/util/FileUtils.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. 58181
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 71
ShortVariable Avoid variables with short names like br 75
ShortVariable Avoid variables with short names like is 128
CommentRequired Public method and constructor comments are required 128179
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 130
ShortVariable Avoid variables with short names like br 134
InefficientEmptyStringCheck String.trim().length() == 0 / String.trim().isEmpty() is an inefficient way to validate a blank String. 144
ShortVariable Avoid variables with short names like m 150

Priority 4

fr/paris/lutece/plugins/easyrulesbot/business/Post.java

Rule Violation Ligne
ShortClassName Avoid short class names like Post 4192

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlBot.java

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

Fichiers

fr/paris/lutece/plugins/easyrulesbot/business/Post.java

Rule Violation Priority Ligne
ShortClassName Avoid short class names like Post 4 4192

fr/paris/lutece/plugins/easyrulesbot/service/bot/BotExecutor.java

Rule Violation Priority Ligne
ImmutableField Private field '_bot' could be made final; it is only initialized in the declaration or constructor. 3 66
ImmutableField Private field '_locale' could be made final; it is only initialized in the declaration or constructor. 3 67
ImmutableField Private field '_mapData' could be made final; it is only initialized in the declaration or constructor. 3 69
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 69
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 178193
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 180

fr/paris/lutece/plugins/easyrulesbot/service/bot/EasyRulesBot.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 53175
UnusedPrivateField Avoid unused private fields such as 'PROPERTY_LAST_MESSAGE'. 3 55
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 57
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 32, but has at least 100 characters appended. 3 159
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 159
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 160
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 161
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 162
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 163
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 164
ShortVariable Avoid variables with short names like br 3 168

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/BotRule.java

Rule Violation Priority Ligne
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 215
UseStringBufferForStringAppends Prefer StringBuilder (non-synchronized) or StringBuffer (synchronized) over += for concatenating strings 3 219
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 379
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 25, but has at least 105 characters appended. 3 379
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 380
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 381
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 382
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 383
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 384

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/AbstractCondition.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 4290
FieldDeclarationsShouldBeAtStartOfClass Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. 3 68

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/ConditionsService.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 4673
NonThreadSafeSingleton Singleton is not thread safe 3 5967

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/DataMissingCondition.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 4488
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 81

fr/paris/lutece/plugins/easyrulesbot/service/bot/rules/conditions/DataValueCondition.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 4171
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 59 characters appended. 3 62
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 65

fr/paris/lutece/plugins/easyrulesbot/service/response/exceptions/InvalidResponseException.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 3951

fr/paris/lutece/plugins/easyrulesbot/service/response/exceptions/ResponseNotUnderstoodException.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 3951

fr/paris/lutece/plugins/easyrulesbot/service/response/filters/FiltersService.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 4669
NonThreadSafeSingleton Singleton is not thread safe 3 5866

fr/paris/lutece/plugins/easyrulesbot/service/response/filters/StopOnWordFilter.java

Rule Violation Priority Ligne
DataClass The class 'StopOnWordFilter' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=13) 3 51191
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 56
ImmutableField Private field '_mapLocaleStopWordsList' could be made final; it is only initialized in the declaration or constructor. 3 56
ImmutableField Private field '_mapLocaleResponseMessageList' could be made final; it is only initialized in the declaration or constructor. 3 58
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 58
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 3 109
AvoidReassigningParameters Avoid reassigning parameters such as 'locale' 2 129
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 131
ConfusingTernary Avoid if (x != y) ..; else ..; 3 144154
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 173

fr/paris/lutece/plugins/easyrulesbot/service/response/processors/InputStringResponseProcessor.java

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

fr/paris/lutece/plugins/easyrulesbot/service/response/processors/MultipleValuesResponseProcessor.java

Rule Violation Priority Ligne
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 3 104
ConfusingTernary Avoid if (x != y) ..; else ..; 3 148155

fr/paris/lutece/plugins/easyrulesbot/service/response/processors/ProcessorsService.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 4669
NonThreadSafeSingleton Singleton is not thread safe 3 5866

fr/paris/lutece/plugins/easyrulesbot/service/yaml/YamlBotLoader.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 67202
CommentRequired Public method and constructor comments are required 3 7193
GuardLogStatement Logger calls should be surrounded by log level guards. 2 86
CommentRequired Public method and constructor comments are required 3 95103
GuardLogStatement Logger calls should be surrounded by log level guards. 2 101
CyclomaticComplexity The method 'createBot(YamlBot)' has a cyclomatic complexity of 11. 3 114179
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 123
GuardLogStatement Logger calls should be surrounded by log level guards. 2 176
NonThreadSafeSingleton Singleton is not thread safe 3 183190
CommentRequired Header comments are required 3 194201

fr/paris/lutece/plugins/easyrulesbot/service/yaml/YamlBotLoadingException.java

Rule Violation Priority Ligne
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 4053

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlBot.java

Rule Violation Priority Ligne
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 185188
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 249
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 32, but has at least 118 characters appended. 3 249
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 250
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 251
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 252
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 253
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 254
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 255

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlCondition.java

Rule Violation Priority Ligne
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 32, but has at least 50 characters appended. 3 94
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 95
AppendCharacterWithChar Avoid appending characters as strings in StringBuffer.append. 3 101

fr/paris/lutece/plugins/easyrulesbot/service/yaml/model/YamlRule.java

Rule Violation Priority Ligne
ConsecutiveLiteralAppends StringBuffer (or StringBuilder).append is called 2 consecutive times with literals. Use a single append with a single combined String. 3 271
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 25, but has at least 105 characters appended. 3 271
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 272
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 273
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 274
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 275
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 276

fr/paris/lutece/plugins/easyrulesbot/util/FileUtils.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 58181
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 71
ShortVariable Avoid variables with short names like br 3 75
AvoidFileStream Avoid instantiating FileInputStream, FileOutputStream, FileReader, or FileWriter 1 79
AvoidFileStream Avoid instantiating FileInputStream, FileOutputStream, FileReader, or FileWriter 1 118
ShortVariable Avoid variables with short names like is 3 128
CommentRequired Public method and constructor comments are required 3 128179
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 130
ShortVariable Avoid variables with short names like br 3 134
InefficientEmptyStringCheck String.trim().length() == 0 / String.trim().isEmpty() is an inefficient way to validate a blank String. 3 144
ShortVariable Avoid variables with short names like m 3 150