Fork me on GitHub

Rapport SpotBugs de détection des bugs

Le document suivant contient les résultats du SpotBugs

La version de SpotBugs est 4.5.3

La limite est medium

L'effort est default

Résumé

Classes Bugs Erreurs Classes Manquantes
34 40 0 0

Fichiers

Classe Bugs
fr.paris.lutece.plugins.easyrulesbot.service.bot.BotExecutor 4
fr.paris.lutece.plugins.easyrulesbot.service.bot.EasyRulesBot 4
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule 7
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.AbstractCondition 2
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.ConditionsService 1
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.DebugFilter 1
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.FiltersService 1
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.StopOnWordFilter 5
fr.paris.lutece.plugins.easyrulesbot.service.response.processors.MultipleValuesResponseProcessor 2
fr.paris.lutece.plugins.easyrulesbot.service.response.processors.ProcessorsService 1
fr.paris.lutece.plugins.easyrulesbot.service.yaml.YamlBotLoader 1
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlBot 4
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlCondition 2
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlRule 4
fr.paris.lutece.plugins.easyrulesbot.util.FileUtils 1

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.bot.BotExecutor.getDataMap() may expose internal representation by returning BotExecutor._mapData MALICIOUS_CODE EI_EXPOSE_REP 213 Medium
new fr.paris.lutece.plugins.easyrulesbot.service.bot.BotExecutor(EasyRulesBot, Locale) may expose internal representation by storing an externally mutable object into BotExecutor._bot MALICIOUS_CODE EI_EXPOSE_REP2 81 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.BotExecutor.setCurrentRule(BotRule) may expose internal representation by storing an externally mutable object into BotExecutor._currentRule MALICIOUS_CODE EI_EXPOSE_REP2 172 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.BotExecutor.traceData() makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 202 Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.bot.EasyRulesBot.getResponseFilters() may expose internal representation by returning EasyRulesBot._listResponseFilters MALICIOUS_CODE EI_EXPOSE_REP 139 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.EasyRulesBot.getRulesEngine() may expose internal representation by returning EasyRulesBot._engine MALICIOUS_CODE EI_EXPOSE_REP 106 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.EasyRulesBot.setListResponseFilters(List) may expose internal representation by storing an externally mutable object into EasyRulesBot._listResponseFilters MALICIOUS_CODE EI_EXPOSE_REP2 129 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.EasyRulesBot.setRulesEngine(RulesEngine) may expose internal representation by storing an externally mutable object into EasyRulesBot._engine MALICIOUS_CODE EI_EXPOSE_REP2 117 Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule.getButtons() may expose internal representation by returning BotRule._listButtons MALICIOUS_CODE EI_EXPOSE_REP 185 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule.setButtons(List) may expose internal representation by storing an externally mutable object into BotRule._listButtons MALICIOUS_CODE EI_EXPOSE_REP2 196 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule.setExecutor(BotExecutor) may expose internal representation by storing an externally mutable object into BotRule._executor MALICIOUS_CODE EI_EXPOSE_REP2 244 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule.setListConditions(List) may expose internal representation by storing an externally mutable object into BotRule._listConditions MALICIOUS_CODE EI_EXPOSE_REP2 276 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule defines compareTo(Object) and uses Object.equals() BAD_PRACTICE EQ_COMPARETO_USE_OBJECT_EQUALS 345-347 Medium
Class fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule defines non-transient non-serializable instance field _listButtons BAD_PRACTICE SE_BAD_FIELD Non disponible High
Class fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.BotRule defines non-transient non-serializable instance field _responseProcessor BAD_PRACTICE SE_BAD_FIELD Non disponible Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.AbstractCondition.getParameters() may expose internal representation by returning AbstractCondition._listParameters MALICIOUS_CODE EI_EXPOSE_REP 78 Medium
fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.AbstractCondition.setParameters(List) may expose internal representation by storing an externally mutable object into AbstractCondition._listParameters MALICIOUS_CODE EI_EXPOSE_REP2 88 Medium

fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.ConditionsService

Bug Catégorie Détails Ligne Priorité
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.ConditionsService._mapConditionFactories in fr.paris.lutece.plugins.easyrulesbot.service.bot.rules.conditions.ConditionsService.getCondition(String) MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 59-61 High

fr.paris.lutece.plugins.easyrulesbot.service.response.filters.DebugFilter

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.DebugFilter.filterResponse(String, Locale, Map) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 60 Medium

fr.paris.lutece.plugins.easyrulesbot.service.response.filters.FiltersService

Bug Catégorie Détails Ligne Priorité
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.easyrulesbot.service.response.filters.FiltersService._mapFilters in fr.paris.lutece.plugins.easyrulesbot.service.response.filters.FiltersService.getFilter(String) MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 58-60 High

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

Bug Catégorie Détails Ligne Priorité
Random object created and used only once in fr.paris.lutece.plugins.easyrulesbot.service.response.filters.StopOnWordFilter.getStopResponseMessage(Locale) BAD_PRACTICE DMI_RANDOM_USED_ONLY_ONCE 157 High
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.StopOnWordFilter.getListStopWords() may expose internal representation by returning StopOnWordFilter._listStopWords MALICIOUS_CODE EI_EXPOSE_REP 67 Medium
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.StopOnWordFilter.setListStopWords(List) may expose internal representation by storing an externally mutable object into StopOnWordFilter._listStopWords MALICIOUS_CODE EI_EXPOSE_REP2 89 Medium
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.StopOnWordFilter.setMapLocaleResponseMessageFile(Map) may expose internal representation by storing an externally mutable object into StopOnWordFilter._mapLocaleResponseMessageFile MALICIOUS_CODE EI_EXPOSE_REP2 100 Medium
fr.paris.lutece.plugins.easyrulesbot.service.response.filters.StopOnWordFilter.setMapLocaleStopWordsFile(Map) may expose internal representation by storing an externally mutable object into StopOnWordFilter._mapLocaleStopWordsFile MALICIOUS_CODE EI_EXPOSE_REP2 78 Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.response.processors.MultipleValuesResponseProcessor.setValueTermsMap(Map) may expose internal representation by storing an externally mutable object into MultipleValuesResponseProcessor._mapMultipleValues MALICIOUS_CODE EI_EXPOSE_REP2 73 Medium
fr.paris.lutece.plugins.easyrulesbot.service.response.processors.MultipleValuesResponseProcessor.processResponse(String, Locale, Map) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 109 Medium

fr.paris.lutece.plugins.easyrulesbot.service.response.processors.ProcessorsService

Bug Catégorie Détails Ligne Priorité
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.easyrulesbot.service.response.processors.ProcessorsService._mapProcessors in fr.paris.lutece.plugins.easyrulesbot.service.response.processors.ProcessorsService.getProcessor(String) MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 58-60 High

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

Bug Catégorie Détails Ligne Priorité
Possible null pointer dereference in fr.paris.lutece.plugins.easyrulesbot.service.yaml.YamlBotLoader.loadBots() due to return value of called method STYLE NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE 78 Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlBot.getFilters() may expose internal representation by returning YamlBot._listFilters MALICIOUS_CODE EI_EXPOSE_REP 229 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlBot.getRules() may expose internal representation by returning YamlBot._listRules MALICIOUS_CODE EI_EXPOSE_REP 208 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlBot.setFilters(List) may expose internal representation by storing an externally mutable object into YamlBot._listFilters MALICIOUS_CODE EI_EXPOSE_REP2 240 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlBot.setRules(List) may expose internal representation by storing an externally mutable object into YamlBot._listRules MALICIOUS_CODE EI_EXPOSE_REP2 219 Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlCondition.getParameters() may expose internal representation by returning YamlCondition._listParameters MALICIOUS_CODE EI_EXPOSE_REP 76 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlCondition.setParameters(List) may expose internal representation by storing an externally mutable object into YamlCondition._listParameters MALICIOUS_CODE EI_EXPOSE_REP2 85 Medium

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

Bug Catégorie Détails Ligne Priorité
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlRule.getButtons() may expose internal representation by returning YamlRule._listButtons MALICIOUS_CODE EI_EXPOSE_REP 146 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlRule.getConditions() may expose internal representation by returning YamlRule._listConditions MALICIOUS_CODE EI_EXPOSE_REP 230 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlRule.setButtons(List) may expose internal representation by storing an externally mutable object into YamlRule._listButtons MALICIOUS_CODE EI_EXPOSE_REP2 157 Medium
fr.paris.lutece.plugins.easyrulesbot.service.yaml.model.YamlRule.setConditions(List) may expose internal representation by storing an externally mutable object into YamlRule._listConditions MALICIOUS_CODE EI_EXPOSE_REP2 241 Medium

fr.paris.lutece.plugins.easyrulesbot.util.FileUtils

Bug Catégorie Détails Ligne Priorité
Found reliance on default encoding in fr.paris.lutece.plugins.easyrulesbot.util.FileUtils.loadTermsFromFile(String): new java.io.FileReader(String) I18N DM_DEFAULT_ENCODING 79 High