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/elasticdata/modules/appointment/business/AppointmentHistoryDataObject.java

Rule Violation Line
ConstructorCallsOverridableMethod Overridable method 'setId' called during object construction 57

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentSlotUtil.java

Rule Violation Line
FieldNamingConventions The constant name '_stateService' doesn't match '[A-Z][A-Z_0-9]*' 88

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingAppointmentService.java

Rule Violation Line
FieldNamingConventions The constant name '_nBatchSize' doesn't match '[A-Z][A-Z_0-9]*' 91

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingSlotService.java

Rule Violation Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 65–336
FieldNamingConventions The constant name '_nBatchSize' doesn't match '[A-Z][A-Z_0-9]*' 68

Priority 2

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentSlotUtil.java

Rule Violation Line
AvoidReassigningParameters Avoid reassigning parameters such as 'listSlots' 290
AvoidReassigningParameters Avoid reassigning parameters such as 'listAvailableSlots' 329

Priority 3

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentDataObject.java

Rule Violation Line
CallSuperInConstructor It is a good practice to call super() in a constructor 65–68
CommentRequired Public method and constructor comments are required 65–68
UncommentedEmptyConstructor Document empty constructor 65–68
CallSuperInConstructor It is a good practice to call super() in a constructor 70–86
CommentRequired Public method and constructor comments are required 70–86

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentForm.java

Rule Violation Line
CommentRequired Public method and constructor comments are required 55–74

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentHistoryDataObject.java

Rule Violation Line
CallSuperInConstructor It is a good practice to call super() in a constructor 55–59
CommentRequired Public method and constructor comments are required 55–59
MissingOverride The method 'getId()' is missing an @Override annotation. 66–69
MissingOverride The method 'setId(String)' is missing an @Override annotation. 77–80

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentPartialDataObject.java

Rule Violation Line
CommentRequired Public method and constructor comments are required 49–55

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentSlotDataObject.java

Rule Violation Line
CommentRequired Header comments are required 49–304

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentHistoryDataSource.java

Rule Violation Line
DefaultPackage Use explicit scoping instead of the default package private level 49–50
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _resourceHistoryService field if you want a default access modifier 50

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentSlotUtil.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–388
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 59 characters appended. 243
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 55 characters appended. 272
CommentRequired Public method and constructor comments are required 359–368

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingAppointmentService.java

Rule Violation Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 34–554
GodClass Possible God Class (WMC=49, ATFD=74, TCC=8.333%) 79–554
CommentRequired Header comments are required 79–554
TooManyMethods This class has too many methods, consider refactoring it. 80–554
ImmutableField Private field '_resourceHistoryService' could be made final; it is only initialized in the declaration or constructor. 82
ImmutableField Private field '_stateService' could be made final; it is only initialized in the declaration or constructor. 83
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 84
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 228
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 231
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 234
ConfusingTernary Avoid if (x != y) ..; else ..; 250
ControlStatementBraces This statement should have braces 422
ConfusingTernary Avoid if (x != y) ..; else ..; 443
ConfusingTernary Avoid if (x != y) ..; else ..; 534
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 545

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingSlotService.java

Rule Violation Line
CommentRequired Header comments are required 65–336
ControlStatementBraces This statement should have braces 267
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 304
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 324–328
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 330–334

Priority 4

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentDataObject.java

Rule Violation Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 135–138
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 324–327

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentForm.java

Rule Violation Line
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 144–147
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 165–168

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentPartialDataObject.java

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

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentSlotDataObject.java

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

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentSlotUtil.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'java.time.temporal.ChronoUnit' 42

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingAppointmentService.java

Rule Violation Line
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.sql.Timestamp' due to existing import 'java.sql.Timestamp' 400
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.sql.Timestamp' due to existing import 'java.sql.Timestamp' 400

Files

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentDataObject.java

Rule Violation Priority Line
CallSuperInConstructor It is a good practice to call super() in a constructor 3 65–68
CommentRequired Public method and constructor comments are required 3 65–68
UncommentedEmptyConstructor Document empty constructor 3 65–68
CallSuperInConstructor It is a good practice to call super() in a constructor 3 70–86
CommentRequired Public method and constructor comments are required 3 70–86
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 135–138
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 324–327

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentForm.java

Rule Violation Priority Line
CommentRequired Public method and constructor comments are required 3 55–74
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 144–147
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 165–168

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentHistoryDataObject.java

Rule Violation Priority Line
CallSuperInConstructor It is a good practice to call super() in a constructor 3 55–59
CommentRequired Public method and constructor comments are required 3 55–59
ConstructorCallsOverridableMethod Overridable method 'setId' called during object construction 1 57
MissingOverride The method 'getId()' is missing an @Override annotation. 3 66–69
MissingOverride The method 'setId(String)' is missing an @Override annotation. 3 77–80

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentPartialDataObject.java

Rule Violation Priority Line
CommentRequired Public method and constructor comments are required 3 49–55
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 104–107

fr/paris/lutece/plugins/elasticdata/modules/appointment/business/AppointmentSlotDataObject.java

Rule Violation Priority Line
CommentRequired Header comments are required 3 49–304
BooleanGetMethodName A getX() method which returns a boolean should be named isX() 4 267–270

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentHistoryDataSource.java

Rule Violation Priority Line
DefaultPackage Use explicit scoping instead of the default package private level 3 49–50
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the _resourceHistoryService field if you want a default access modifier 3 50

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/AppointmentSlotUtil.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–388
UnusedImports Avoid unused imports such as 'java.time.temporal.ChronoUnit' 4 42
FieldNamingConventions The constant name '_stateService' doesn't match '[A-Z][A-Z_0-9]*' 1 88
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 59 characters appended. 3 243
InsufficientStringBufferDeclaration StringBuffer constructor is initialized with size 16, but has at least 55 characters appended. 3 272
AvoidReassigningParameters Avoid reassigning parameters such as 'listSlots' 2 290
AvoidReassigningParameters Avoid reassigning parameters such as 'listAvailableSlots' 2 329
CommentRequired Public method and constructor comments are required 3 359–368

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingAppointmentService.java

Rule Violation Priority Line
ExcessiveImports A high number of imports can indicate a high degree of coupling within an object. 3 34–554
GodClass Possible God Class (WMC=49, ATFD=74, TCC=8.333%) 3 79–554
CommentRequired Header comments are required 3 79–554
TooManyMethods This class has too many methods, consider refactoring it. 3 80–554
ImmutableField Private field '_resourceHistoryService' could be made final; it is only initialized in the declaration or constructor. 3 82
ImmutableField Private field '_stateService' could be made final; it is only initialized in the declaration or constructor. 3 83
ImmutableField Private field '_resourceWorkflowService' could be made final; it is only initialized in the declaration or constructor. 3 84
FieldNamingConventions The constant name '_nBatchSize' doesn't match '[A-Z][A-Z_0-9]*' 1 91
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 228
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 231
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 234
ConfusingTernary Avoid if (x != y) ..; else ..; 3 250
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.sql.Timestamp' due to existing import 'java.sql.Timestamp' 4 400
UnnecessaryFullyQualifiedName Unnecessary use of fully qualified name 'java.sql.Timestamp' due to existing import 'java.sql.Timestamp' 4 400
ControlStatementBraces This statement should have braces 3 422
ConfusingTernary Avoid if (x != y) ..; else ..; 3 443
ConfusingTernary Avoid if (x != y) ..; else ..; 3 534
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 545

fr/paris/lutece/plugins/elasticdata/modules/appointment/service/IndexingSlotService.java

Rule Violation Priority Line
ClassWithOnlyPrivateConstructorsShouldBeFinal A class which only has private constructors should be final 1 65–336
CommentRequired Header comments are required 3 65–336
FieldNamingConventions The constant name '_nBatchSize' doesn't match '[A-Z][A-Z_0-9]*' 1 68
ControlStatementBraces This statement should have braces 3 267
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 304
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 324–328
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 330–334