Details
-
Sub-task
-
Status: Closed
-
Could
-
Resolution: Fixed
-
None
-
None
-
Low
Description
Following the SonarQube:
This code compares a java.lang.String parameter for reference equality using the == or != operators. Requiring callers to pass only String constants or interned strings to a method is unnecessarily fragile, and rarely leads to measurable performance gains. Consider using the equals(Object) method instead.
First case:
- GitHub link: https://github.com/openmrs/openmrs-core/blob/master/api/src/main/java/org/openmrs/api/db/hibernate/PersonLuceneQuery.java#L137
- Sonar link: https://sonar.openmrs.org/project/issues?id=org.openmrs%3Aopenmrs&issues=AXParDze5zdzQEOFIPFZ&open=AXParDze5zdzQEOFIPFZ
Second case:
- GitHub link: https://github.com/openmrs/openmrs-core/blob/master/api/src/main/java/org/openmrs/module/Module.java#L537
- Sonar link: https://sonar.openmrs.org/project/issues?id=org.openmrs%3Aopenmrs&issues=4c420175-43cb-41cd-b732-991879260170&open=4c420175-43cb-41cd-b732-991879260170
Solution:
Replace == comparison with equals().