La partie suivante du code soulève un bogue majeur à SonarQube: "Appeler la ou les méthodes uniquement de manière conditionnelle."
Comment suis-je censé résoudre ce problème?
if(us != null){
logger.info("Log this: {}", us.toString());
}
L'appel à us.toString()
est redondant, la méthode toString()
sera appelée quel que soit le niveau de journal configuré. Vous ne devez passer que us
comme argument à info
sans instruction if
.
logger.info("Log this: {}", us);
Comme indiqué dans les commentaires de la question, une autre réponse de travail est:
if(logger.isInfoEnabled() && us != null){
logger.info("Log this: {}", us.toString());
}