PMD Results
The following document contains the results of PMD 6.13.0.
Violations By Priority
Priority 1
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentFormResourceTypeHome.java
Priority 2
fr/paris/lutece/plugins/appointment/modules/resource/service/AppointmentResourceService.java
Priority 3
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentFormResourceTypeDAO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentResourceDTO.java
| Rule |
Violation |
Line |
| DataClass |
The class 'AppointmentResourceDTO' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=5) |
41–101 |
| CallSuperInConstructor |
It is a good practice to call super() in a constructor |
53–58 |
fr/paris/lutece/plugins/appointment/modules/resource/business/calendar/CalendarAppointmentResourceDTO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/calendar/CalendarDayDTO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/form/FormResourceCalendar.java
fr/paris/lutece/plugins/appointment/modules/resource/business/workflow/SetAppointmentResourceHistoryDAO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/workflow/TaskSetAppointmentResourceConfigDAO.java
fr/paris/lutece/plugins/appointment/modules/resource/service/AppointmentResourceAddonService.java
| Rule |
Violation |
Line |
| UseDiamondOperator |
Explicit type arguments can be replaced by Diamond Operator |
69 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
85 |
| UseDiamondOperator |
Explicit type arguments can be replaced by Diamond Operator |
85 |
fr/paris/lutece/plugins/appointment/modules/resource/service/AppointmentResourceService.java
fr/paris/lutece/plugins/appointment/modules/resource/service/workflow/TaskSetAppointmentResource.java
fr/paris/lutece/plugins/appointment/modules/resource/web/AppointmentFormResourcesJspBean.java
fr/paris/lutece/plugins/appointment/modules/resource/web/AppointmentResourceJspBean.java
| Rule |
Violation |
Line |
| ExcessiveImports |
A high number of imports can indicate a high degree of coupling within an object. |
34–533 |
| NPathComplexity |
The method 'getWeekResourceCalendar(IResource, int, Locale)' has an NPath complexity of 676 |
266–411 |
| NcssCount |
The method 'getWeekResourceCalendar(IResource, int, Locale)' has a NCSS line count of 83. |
266–411 |
| CyclomaticComplexity |
The method 'getWeekResourceCalendar(IResource, int, Locale)' has a cyclomatic complexity of 13. |
266–411 |
| ExcessiveMethodLength |
Avoid really long methods. |
266–411 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
269 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
288 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
450 |
| SimplifyStartsWith |
This call to String.startsWith can be rewritten using String.charAt(0) |
516 |
fr/paris/lutece/plugins/appointment/modules/resource/web/AppointmentUserCalendarDashboardComponent.java
| Rule |
Violation |
Line |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
80 |
fr/paris/lutece/plugins/appointment/modules/resource/web/workflow/SetAppointmentResourceTaskComponent.java
Priority 4
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentFormResourceType.java
fr/paris/lutece/plugins/appointment/modules/resource/business/workflow/TaskSetAppointmentResourceConfig.java
fr/paris/lutece/plugins/appointment/modules/resource/service/AppointmentResourceService.java
| Rule |
Violation |
Line |
| UnusedImports |
Avoid unused imports such as 'fr.paris.lutece.plugins.appointment.business.appointment.Appointment' |
36 |
| UnusedImports |
Avoid unused imports such as 'fr.paris.lutece.plugins.appointment.business.slot.Slot' |
37 |
| UnusedImports |
Avoid unused imports such as 'fr.paris.lutece.plugins.appointment.service.SlotService' |
40 |
Files
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentFormResourceType.java
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentFormResourceTypeDAO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentFormResourceTypeHome.java
fr/paris/lutece/plugins/appointment/modules/resource/business/AppointmentResourceDTO.java
| Rule |
Violation |
Priority |
Line |
| DataClass |
The class 'AppointmentResourceDTO' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=5) |
3 |
41–101 |
| CallSuperInConstructor |
It is a good practice to call super() in a constructor |
3 |
53–58 |
fr/paris/lutece/plugins/appointment/modules/resource/business/calendar/CalendarAppointmentResourceDTO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/calendar/CalendarDayDTO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/form/FormResourceCalendar.java
fr/paris/lutece/plugins/appointment/modules/resource/business/workflow/SetAppointmentResourceHistoryDAO.java
fr/paris/lutece/plugins/appointment/modules/resource/business/workflow/TaskSetAppointmentResourceConfig.java
fr/paris/lutece/plugins/appointment/modules/resource/business/workflow/TaskSetAppointmentResourceConfigDAO.java
fr/paris/lutece/plugins/appointment/modules/resource/service/AppointmentResourceAddonService.java
| Rule |
Violation |
Priority |
Line |
| UseDiamondOperator |
Explicit type arguments can be replaced by Diamond Operator |
3 |
69 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
3 |
85 |
| UseDiamondOperator |
Explicit type arguments can be replaced by Diamond Operator |
3 |
85 |
fr/paris/lutece/plugins/appointment/modules/resource/service/AppointmentResourceService.java
| Rule |
Violation |
Priority |
Line |
| UnusedImports |
Avoid unused imports such as 'fr.paris.lutece.plugins.appointment.business.appointment.Appointment' |
4 |
36 |
| UnusedImports |
Avoid unused imports such as 'fr.paris.lutece.plugins.appointment.business.slot.Slot' |
4 |
37 |
| UnusedImports |
Avoid unused imports such as 'fr.paris.lutece.plugins.appointment.service.SlotService' |
4 |
40 |
| AvoidUsingVolatile |
Use of modifier volatile is not recommended. |
2 |
54 |
| NonThreadSafeSingleton |
Singleton is not thread safe |
3 |
63–66 |
fr/paris/lutece/plugins/appointment/modules/resource/service/workflow/TaskSetAppointmentResource.java
fr/paris/lutece/plugins/appointment/modules/resource/web/AppointmentFormResourcesJspBean.java
fr/paris/lutece/plugins/appointment/modules/resource/web/AppointmentResourceJspBean.java
| Rule |
Violation |
Priority |
Line |
| ExcessiveImports |
A high number of imports can indicate a high degree of coupling within an object. |
3 |
34–533 |
| NPathComplexity |
The method 'getWeekResourceCalendar(IResource, int, Locale)' has an NPath complexity of 676 |
3 |
266–411 |
| NcssCount |
The method 'getWeekResourceCalendar(IResource, int, Locale)' has a NCSS line count of 83. |
3 |
266–411 |
| CyclomaticComplexity |
The method 'getWeekResourceCalendar(IResource, int, Locale)' has a cyclomatic complexity of 13. |
3 |
266–411 |
| ExcessiveMethodLength |
Avoid really long methods. |
3 |
266–411 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
3 |
269 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
3 |
288 |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
3 |
450 |
| SimplifyStartsWith |
This call to String.startsWith can be rewritten using String.charAt(0) |
3 |
516 |
fr/paris/lutece/plugins/appointment/modules/resource/web/AppointmentUserCalendarDashboardComponent.java
| Rule |
Violation |
Priority |
Line |
| UseConcurrentHashMap |
If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation |
3 |
80 |
fr/paris/lutece/plugins/appointment/modules/resource/web/workflow/SetAppointmentResourceTaskComponent.java