The following document contains the results of SpotBugs
SpotBugs Version is 4.1.3
Threshold is medium
Effort is default
Classes | Bugs | Errors | Missing Classes |
---|---|---|---|
125 | 30 | 0 | 0 |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to simulatedEvolutionTab in new org.woehlke.computer.kurzweil.SimulatedEvolutionApplication(String[]) | STYLE | DLS_DEAD_LOCAL_STORE | 28 | Medium |
Dead store to application in org.woehlke.computer.kurzweil.SimulatedEvolutionApplication.main(String[]) | STYLE | DLS_DEAD_LOCAL_STORE | 36 | Medium |
Usage of GetResource in new org.woehlke.computer.kurzweil.SimulatedEvolutionApplication(String[]) may be unsafe if class is extended | BAD_PRACTICE | UI_INHERITANCE_UNSAFE_GETRESOURCE | 25 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) may fail to clean up java.io.InputStream | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 1017 | Medium |
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) | STYLE | REC_CATCH_EXCEPTION | 1020 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 1029 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Confusing to have methods org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$Allinone$View.getSubtitle() and org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl.getSubTitle() | BAD_PRACTICE | NM_CONFUSING | 114 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.commons.model.Bounds is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 13-45 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
org.woehlke.computer.kurzweil.commons.model.LatticeNeighbourhood.getNeighbourhood() may expose internal representation by returning LatticeNeighbourhood.neighbourhood | MALICIOUS_CODE | EI_EXPOSE_REP | 20 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.commons.model.LatticePointNeighbourhoodPosition$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 30 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionApplet implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 26-75 | Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionApplet defines non-transient non-serializable instance field simulatedEvolutionController | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext defines non-transient non-serializable instance field controller | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Medium |
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionContext is Serializable; consider declaring a serialVersionUID | BAD_PRACTICE | SE_NO_SERIALVERSIONID | 16-77 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController.exit() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 64 | High |
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController.run() | MT_CORRECTNESS | DL_SYNCHRONIZATION_ON_BOOLEAN | 48 | High |
Synchronization on SimulatedEvolutionController.mySemaphore in futile attempt to guard it | MT_CORRECTNESS | ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD | 65 | Medium |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionController implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 16-67 | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel defines non-transient non-serializable instance field cells | BAD_PRACTICE | SE_BAD_FIELD | Not available | High |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel defines non-transient non-serializable instance field simulatedEvolutionParameter | BAD_PRACTICE | SE_BAD_FIELD | Not available | High |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionModel defines non-transient non-serializable instance field simulatedEvolutionWorldLattice | BAD_PRACTICE | SE_BAD_FIELD | Not available | High |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab implements same interface as superclass | STYLE | RI_REDUNDANT_INTERFACES | 30-121 | Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab defines non-transient non-serializable instance field ctx | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab defines non-transient non-serializable instance field properties | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab defines non-transient non-serializable instance field simulatedEvolutionParameter | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.population.PopulationStatisticsElementsPanelCounted defines non-transient non-serializable instance field population | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.population.PopulationStatisticsElementsPanelLifeCycle defines non-transient non-serializable instance field population | BAD_PRACTICE | SE_BAD_FIELD | Not available | Low |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Switch statement found in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation.countStatusOfOneCell(LifeCycleStatus) where default case is missing | STYLE | SF_SWITCH_NO_DEFAULT | 33-50 | Medium |
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.SimulatedEvolutionPopulation$1.<static initializer for 1>() | STYLE | DLS_DEAD_LOCAL_STORE | 33 | Medium |