SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.7.0

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
174 338 0 0

Files

Class Bugs
org.woehlke.computer.kurzweil.ComputerKurzweilApplication 1
org.woehlke.computer.kurzweil.application.ComputerKurzweilContext 5
org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame 10
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar 9
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties 17
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$1 1
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$Allinone$View 1
org.woehlke.computer.kurzweil.commons.model.LatticeNeighbourhood 1
org.woehlke.computer.kurzweil.commons.model.LatticePointNeighbourhoodPosition$1 1
org.woehlke.computer.kurzweil.commons.model.fractal.GaussianNumberPlane 2
org.woehlke.computer.kurzweil.commons.widgets.PanelStartStopButtons 2
org.woehlke.computer.kurzweil.commons.widgets.PanelWithTitleBorder 1
org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl 5
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane 6
org.woehlke.computer.kurzweil.tabs.TabPanel 3
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab 6
org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas 6
org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext 5
org.woehlke.computer.kurzweil.tabs.cca.control.CyclicCellularAutomatonController 5
org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel 11
org.woehlke.computer.kurzweil.tabs.cca.views.CyclicCellularAutomatonTabPane 4
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons 8
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab 5
org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas 5
org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext 6
org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController 8
org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel 10
org.woehlke.computer.kurzweil.tabs.dla.views.DiffusionLimitedAggregationTabPane 3
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab 6
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas 5
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext 5
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController 7
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel 6
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel$1 1
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.state.MandelbrotTabStateMachine$1 1
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.MandelbrotTuringMachine 1
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.MandelbrotTuringMachine$1 1
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point 4
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPhaseState 1
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions 4
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions$1 1
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.MandelbrotTabPane 3
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelButtons 2
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode 8
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom 5
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab 6
org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas 6
org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext 5
org.woehlke.computer.kurzweil.tabs.randomwalk.control.RandomWalkController 5
org.woehlke.computer.kurzweil.tabs.randomwalk.model.ParticleOrientation 1
org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel 11
org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkButtons 4
org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkTabPane 1
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab 6
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas 6
org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext 5
org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController 8
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel 10
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell 4
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellCore 1
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle 3
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellOrientation 1
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer 8
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer$1 1
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.world.WorldLattice 3
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel 8
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel 5
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel 7
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel 7
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane 6
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.population.PopulationStatisticsElement 2

org.woehlke.computer.kurzweil.ComputerKurzweilApplication

Bug Category Details Line Priority
Usage of GetResource in new org.woehlke.computer.kurzweil.ComputerKurzweilApplication(String[]) may be unsafe if class is extended BAD_PRACTICE UI_INHERITANCE_UNSAFE_GETRESOURCE 48 Low

org.woehlke.computer.kurzweil.application.ComputerKurzweilContext

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.application.ComputerKurzweilContext.getFrame() may expose internal representation by returning ComputerKurzweilContext.frame MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilContext.getProperties() may expose internal representation by returning ComputerKurzweilContext.properties MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilContext.getRandom() may expose internal representation by returning ComputerKurzweilContext.random MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
new org.woehlke.computer.kurzweil.application.ComputerKurzweilContext(ComputerKurzweilProperties, ComputerKurzweilFrame) may expose internal representation by storing an externally mutable object into ComputerKurzweilContext.frame MALICIOUS_CODE EI_EXPOSE_REP2 33 Medium
new org.woehlke.computer.kurzweil.application.ComputerKurzweilContext(ComputerKurzweilProperties, ComputerKurzweilFrame) may expose internal representation by storing an externally mutable object into ComputerKurzweilContext.properties MALICIOUS_CODE EI_EXPOSE_REP2 34 Medium

org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame.getJMenuBar() may expose internal representation by returning ComputerKurzweilFrame.jMenuBar MALICIOUS_CODE EI_EXPOSE_REP 42 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame.getLayout() may expose internal representation by returning ComputerKurzweilFrame.layout MALICIOUS_CODE EI_EXPOSE_REP 45 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame.getPanelCopyright() may expose internal representation by returning ComputerKurzweilFrame.panelCopyright MALICIOUS_CODE EI_EXPOSE_REP 43 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame.getPanelSubtitle() may expose internal representation by returning ComputerKurzweilFrame.panelSubtitle MALICIOUS_CODE EI_EXPOSE_REP 44 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame.getTabbedPane() may expose internal representation by returning ComputerKurzweilFrame.tabbedPane MALICIOUS_CODE EI_EXPOSE_REP 41 Medium
Overridable method addWindowListener is called from constructor new org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame(ComputerKurzweilProperties). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 72 Low
Overridable method getContentPane is called from constructor new org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame(ComputerKurzweilProperties). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 62 Low
Overridable method pack is called from constructor new org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame(ComputerKurzweilProperties). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 70 Low
Overridable method showMe is called from constructor new org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame(ComputerKurzweilProperties). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 73 Low
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilFrame implements same interface as superclass STYLE RI_REDUNDANT_INTERFACES 25-163 Low

org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.lambda$new$0(ActionEvent) invokes System.exit(...), which shuts down the entire virtual machine BAD_PRACTICE DM_EXIT 34 Low
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getCyclicCellularAutomatonMenuItem() may expose internal representation by returning ComputerKurzweilMenuBar.cyclicCellularAutomatonMenuItem MALICIOUS_CODE EI_EXPOSE_REP 104 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getDiffusionLimitedAggregationMenuItem() may expose internal representation by returning ComputerKurzweilMenuBar.diffusionLimitedAggregationMenuItem MALICIOUS_CODE EI_EXPOSE_REP 106 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getExitMenuItem() may expose internal representation by returning ComputerKurzweilMenuBar.exitMenuItem MALICIOUS_CODE EI_EXPOSE_REP 117 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getFileMenu() may expose internal representation by returning ComputerKurzweilMenuBar.fileMenu MALICIOUS_CODE EI_EXPOSE_REP 89 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getMandelbrotMenuItem() may expose internal representation by returning ComputerKurzweilMenuBar.mandelbrotMenuItem MALICIOUS_CODE EI_EXPOSE_REP 107 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getRandomWalkMenuItem() may expose internal representation by returning ComputerKurzweilMenuBar.randomWalkMenuItem MALICIOUS_CODE EI_EXPOSE_REP 105 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getSimulatedEvolutionMenuItem() may expose internal representation by returning ComputerKurzweilMenuBar.simulatedEvolutionMenuItem MALICIOUS_CODE EI_EXPOSE_REP 108 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilMenuBar.getStartMenu() may expose internal representation by returning ComputerKurzweilMenuBar.startMenu MALICIOUS_CODE EI_EXPOSE_REP 90 Medium

org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties

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 487 Medium
org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(String, String) may fail to close stream BAD_PRACTICE OS_OPEN_STREAM 505 Medium
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(File) STYLE REC_CATCH_EXCEPTION 490 Low
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties.propertiesFactory(String, String) STYLE REC_CATCH_EXCEPTION 510 Low
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field allinone BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field cca BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field dla BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field gameoflive BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field kochsnowflake BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field mandelbrot BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field randomwalk BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field samegame BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field sierpinskitriangle BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field simulatedevolution BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field tetris BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field turmite BAD_PRACTICE SE_BAD_FIELD Not available High
Class org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties defines non-transient non-serializable instance field wator BAD_PRACTICE SE_BAD_FIELD Not available High

org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$1

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 519 Medium

org.woehlke.computer.kurzweil.application.ComputerKurzweilProperties$Allinone$View

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 62 Low

org.woehlke.computer.kurzweil.commons.model.LatticeNeighbourhood

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 24 Medium

org.woehlke.computer.kurzweil.commons.model.LatticePointNeighbourhoodPosition$1

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

org.woehlke.computer.kurzweil.commons.model.fractal.GaussianNumberPlane

Bug Category Details Line Priority
Overridable method start is called from constructor new org.woehlke.computer.kurzweil.commons.model.fractal.GaussianNumberPlane(MandelbrotModel). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 67 Low
org.woehlke.computer.kurzweil.commons.model.fractal.GaussianNumberPlane.lattice is a volatile reference to an array; the array elements are non-volatile MT_CORRECTNESS VO_VOLATILE_REFERENCE_TO_ARRAY Not available Medium

org.woehlke.computer.kurzweil.commons.widgets.PanelStartStopButtons

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.commons.widgets.PanelStartStopButtons.getStartButton() may expose internal representation by returning PanelStartStopButtons.startButton MALICIOUS_CODE EI_EXPOSE_REP 19 Medium
org.woehlke.computer.kurzweil.commons.widgets.PanelStartStopButtons.getStopButton() may expose internal representation by returning PanelStartStopButtons.stopButton MALICIOUS_CODE EI_EXPOSE_REP 21 Medium

org.woehlke.computer.kurzweil.commons.widgets.PanelWithTitleBorder

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.commons.widgets.PanelWithTitleBorder.getPanelStartStopButtonsLayout() may expose internal representation by returning PanelWithTitleBorder.panelStartStopButtonsLayout MALICIOUS_CODE EI_EXPOSE_REP 17 Medium

org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl.getLayout() may expose internal representation by returning SubTabImpl.layout MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl.getProperties() may expose internal representation by returning SubTabImpl.properties MALICIOUS_CODE EI_EXPOSE_REP 24 Medium
new org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl(String, String, String, Icon, int, ComputerKurzweilProperties) may expose internal representation by storing an externally mutable object into SubTabImpl.properties MALICIOUS_CODE EI_EXPOSE_REP2 34 Medium
new org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl(String, ComputerKurzweilProperties) may expose internal representation by storing an externally mutable object into SubTabImpl.properties MALICIOUS_CODE EI_EXPOSE_REP2 47 Medium
Overridable method getProperties is called from constructor new org.woehlke.computer.kurzweil.commons.widgets.SubTabImpl(String, ComputerKurzweilProperties). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 48 Low

org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane.getApps() may expose internal representation by returning ComputerKurzweilTabbedPane.apps MALICIOUS_CODE EI_EXPOSE_REP 43 Medium
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane.getCyclicCellularAutomatonTab() may expose internal representation by returning ComputerKurzweilTabbedPane.cyclicCellularAutomatonTab MALICIOUS_CODE EI_EXPOSE_REP 37 Medium
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane.getDiffusionLimitedAggregationTab() may expose internal representation by returning ComputerKurzweilTabbedPane.diffusionLimitedAggregationTab MALICIOUS_CODE EI_EXPOSE_REP 39 Medium
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane.getMandelbrotTab() may expose internal representation by returning ComputerKurzweilTabbedPane.mandelbrotTab MALICIOUS_CODE EI_EXPOSE_REP 40 Medium
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane.getRandomWalkTab() may expose internal representation by returning ComputerKurzweilTabbedPane.randomWalkTab MALICIOUS_CODE EI_EXPOSE_REP 38 Medium
org.woehlke.computer.kurzweil.tabs.ComputerKurzweilTabbedPane.getSimulatedEvolutionTab() may expose internal representation by returning ComputerKurzweilTabbedPane.simulatedEvolutionTab MALICIOUS_CODE EI_EXPOSE_REP 41 Medium

org.woehlke.computer.kurzweil.tabs.TabPanel

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.TabPanel.getLayout() may expose internal representation by returning TabPanel.layout MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.TabPanel.getPanelSubtitle() may expose internal representation by returning TabPanel.panelSubtitle MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.TabPanel.getTabbedPane() may expose internal representation by returning TabPanel.tabbedPane MALICIOUS_CODE EI_EXPOSE_REP 22 Medium

org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab.getCanvas() may expose internal representation by returning CyclicCellularAutomatonTab.canvas MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab.getCyclicCellularAutomatonTabPane() may expose internal representation by returning CyclicCellularAutomatonTab.cyclicCellularAutomatonTabPane MALICIOUS_CODE EI_EXPOSE_REP 33 Medium
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab.getTabCtx() may expose internal representation by returning CyclicCellularAutomatonTab.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab.getTabModel() may expose internal representation by returning CyclicCellularAutomatonTab.tabModel MALICIOUS_CODE EI_EXPOSE_REP 31 Medium
Overridable method addActionListener is called from constructor new org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab(ComputerKurzweilTabbedPane). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 47 Low
Class org.woehlke.computer.kurzweil.tabs.cca.CyclicCellularAutomatonTab implements same interface as superclass STYLE RI_REDUNDANT_INTERFACES 20-94 Low

org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas.getCyclicCellularAutomatonModel() may expose internal representation by returning CyclicCellularAutomatonCanvas.cyclicCellularAutomatonModel MALICIOUS_CODE EI_EXPOSE_REP 49 Medium
org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas.getLayout() may expose internal representation by returning CyclicCellularAutomatonCanvas.layout MALICIOUS_CODE EI_EXPOSE_REP 47 Medium
org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas.getPreferredSize() may expose internal representation by returning CyclicCellularAutomatonCanvas.preferredSize MALICIOUS_CODE EI_EXPOSE_REP 46 Medium
org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas.getTabCtx() may expose internal representation by returning CyclicCellularAutomatonCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 44 Medium
new org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas(CyclicCellularAutomatonContext) may expose internal representation by storing an externally mutable object into CyclicCellularAutomatonCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 57 Medium
Overridable method showMe is called from constructor new org.woehlke.computer.kurzweil.tabs.cca.canvas.CyclicCellularAutomatonCanvas(CyclicCellularAutomatonContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 70 Low

org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext.getCanvas() may expose internal representation by returning CyclicCellularAutomatonContext.canvas MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext.getController() may expose internal representation by returning CyclicCellularAutomatonContext.controller MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext.getTab() may expose internal representation by returning CyclicCellularAutomatonContext.tab MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext.getTabModel() may expose internal representation by returning CyclicCellularAutomatonContext.tabModel MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
new org.woehlke.computer.kurzweil.tabs.cca.config.CyclicCellularAutomatonContext(CyclicCellularAutomatonTab) may expose internal representation by storing an externally mutable object into CyclicCellularAutomatonContext.tab MALICIOUS_CODE EI_EXPOSE_REP2 35 Medium

org.woehlke.computer.kurzweil.tabs.cca.control.CyclicCellularAutomatonController

Bug Category Details Line Priority
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.control.CyclicCellularAutomatonController.exit() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 72 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.control.CyclicCellularAutomatonController.run() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 54 High
org.woehlke.computer.kurzweil.tabs.cca.control.CyclicCellularAutomatonController.getTabCtx() may expose internal representation by returning CyclicCellularAutomatonController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 35 Medium
new org.woehlke.computer.kurzweil.tabs.cca.control.CyclicCellularAutomatonController(CyclicCellularAutomatonContext) may expose internal representation by storing an externally mutable object into CyclicCellularAutomatonController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 44 Medium
Synchronization on CyclicCellularAutomatonController.goOn in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 73 Medium

org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel

Bug Category Details Line Priority
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel.exec() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 51 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel.start() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 150 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel.stop() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 158 High
org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel.getLattice() may expose internal representation by returning CyclicCellularAutomatonModel.lattice MALICIOUS_CODE EI_EXPOSE_REP 24 Medium
org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel.getTabCtx() may expose internal representation by returning CyclicCellularAutomatonModel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 22 Medium
new org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel(CyclicCellularAutomatonContext) may expose internal representation by storing an externally mutable object into CyclicCellularAutomatonModel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 38 Medium
Overridable method resetLattice is called from constructor new org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel(CyclicCellularAutomatonContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 44 Low
Overridable method startWithNeighbourhoodVonNeumann is called from constructor new org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel(CyclicCellularAutomatonContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 43 Low
Synchronization on CyclicCellularAutomatonModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 151 Medium
Synchronization on CyclicCellularAutomatonModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 159 Medium
org.woehlke.computer.kurzweil.tabs.cca.model.CyclicCellularAutomatonModel.lattice is a volatile reference to an array; the array elements are non-volatile MT_CORRECTNESS VO_VOLATILE_REFERENCE_TO_ARRAY Not available Low

org.woehlke.computer.kurzweil.tabs.cca.views.CyclicCellularAutomatonTabPane

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.cca.views.CyclicCellularAutomatonTabPane.getPanelNeighbourhoodButtons() may expose internal representation by returning CyclicCellularAutomatonTabPane.panelNeighbourhoodButtons MALICIOUS_CODE EI_EXPOSE_REP 22 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.CyclicCellularAutomatonTabPane.getStartStopButtonsPanel() may expose internal representation by returning CyclicCellularAutomatonTabPane.startStopButtonsPanel MALICIOUS_CODE EI_EXPOSE_REP 24 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.CyclicCellularAutomatonTabPane.getTab() may expose internal representation by returning CyclicCellularAutomatonTabPane.tab MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
new org.woehlke.computer.kurzweil.tabs.cca.views.CyclicCellularAutomatonTabPane(CyclicCellularAutomatonTab) may expose internal representation by storing an externally mutable object into CyclicCellularAutomatonTabPane.tab MALICIOUS_CODE EI_EXPOSE_REP2 29 Medium

org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getBgroup() may expose internal representation by returning PanelNeighbourhoodButtons.bgroup MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getButtonMoore() may expose internal representation by returning PanelNeighbourhoodButtons.buttonMoore MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getButtonRestart() may expose internal representation by returning PanelNeighbourhoodButtons.buttonRestart MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getButtonVonNeumann() may expose internal representation by returning PanelNeighbourhoodButtons.buttonVonNeumann MALICIOUS_CODE EI_EXPOSE_REP 24 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getButtonWoehlke() may expose internal representation by returning PanelNeighbourhoodButtons.buttonWoehlke MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getCanvas() may expose internal representation by returning PanelNeighbourhoodButtons.canvas MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons.getNeighborhoodLabel() may expose internal representation by returning PanelNeighbourhoodButtons.neighborhoodLabel MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
new org.woehlke.computer.kurzweil.tabs.cca.views.PanelNeighbourhoodButtons(CyclicCellularAutomatonCanvas) may expose internal representation by storing an externally mutable object into PanelNeighbourhoodButtons.canvas MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium

org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab.getCanvas() may expose internal representation by returning DiffusionLimitedAggregationTab.canvas MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab.getDiffusionLimitedAggregationTabPane() may expose internal representation by returning DiffusionLimitedAggregationTab.diffusionLimitedAggregationTabPane MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab.getTabCtx() may expose internal representation by returning DiffusionLimitedAggregationTab.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab.getTabModel() may expose internal representation by returning DiffusionLimitedAggregationTab.tabModel MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
Class org.woehlke.computer.kurzweil.tabs.dla.DiffusionLimitedAggregationTab implements same interface as superclass STYLE RI_REDUNDANT_INTERFACES 18-79 Low

org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas.getLayout() may expose internal representation by returning DiffusionLimitedAggregationCanvas.layout MALICIOUS_CODE EI_EXPOSE_REP 43 Medium
org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas.getPreferredSize() may expose internal representation by returning DiffusionLimitedAggregationCanvas.preferredSize MALICIOUS_CODE EI_EXPOSE_REP 42 Medium
org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas.getTabCtx() may expose internal representation by returning DiffusionLimitedAggregationCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 39 Medium
org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas.getTabModel() may expose internal representation by returning DiffusionLimitedAggregationCanvas.tabModel MALICIOUS_CODE EI_EXPOSE_REP 40 Medium
new org.woehlke.computer.kurzweil.tabs.dla.canvas.DiffusionLimitedAggregationCanvas(DiffusionLimitedAggregationContext) may expose internal representation by storing an externally mutable object into DiffusionLimitedAggregationCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium

org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext.getCanvas() may expose internal representation by returning DiffusionLimitedAggregationContext.canvas MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext.getController() may expose internal representation by returning DiffusionLimitedAggregationContext.controller MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext.getTab() may expose internal representation by returning DiffusionLimitedAggregationContext.tab MALICIOUS_CODE EI_EXPOSE_REP 31 Medium
org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext.getTabModel() may expose internal representation by returning DiffusionLimitedAggregationContext.tabModel MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
new org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext(DiffusionLimitedAggregationTab) may expose internal representation by storing an externally mutable object into DiffusionLimitedAggregationContext.tab MALICIOUS_CODE EI_EXPOSE_REP2 37 Medium
Overridable method startController is called from constructor new org.woehlke.computer.kurzweil.tabs.dla.config.DiffusionLimitedAggregationContext(DiffusionLimitedAggregationTab). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 41 Low

org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController.run() might ignore java.lang.Exception BAD_PRACTICE DE_MIGHT_IGNORE 64 High
Dead store to $L2 in org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController.run() STYLE DLS_DEAD_LOCAL_STORE 64 Medium
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController.exit() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 75 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController.run() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 54 High
org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController.getTabCtx() may expose internal representation by returning DiffusionLimitedAggregationController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 37 Medium
new org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController(DiffusionLimitedAggregationContext) may expose internal representation by storing an externally mutable object into DiffusionLimitedAggregationController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 45 Medium
Synchronization on DiffusionLimitedAggregationController.goOn in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 76 Medium
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.tabs.dla.control.DiffusionLimitedAggregationController.run() STYLE REC_CATCH_EXCEPTION 64

org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel

Bug Category Details Line Priority
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.exec() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 87 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.start() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 64 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.stop() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 72 High
org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.getParticles() may expose internal representation by returning DiffusionLimitedAggregationModel.particles MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.getTabCtx() may expose internal representation by returning DiffusionLimitedAggregationModel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 20 Medium
org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.getWorldMap() may expose internal representation by returning DiffusionLimitedAggregationModel.worldMap MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
new org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel(DiffusionLimitedAggregationContext) may expose internal representation by storing an externally mutable object into DiffusionLimitedAggregationModel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium
Synchronization on DiffusionLimitedAggregationModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 65 Medium
Synchronization on DiffusionLimitedAggregationModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 73 Medium
Switch statement found in org.woehlke.computer.kurzweil.tabs.dla.model.DiffusionLimitedAggregationModel.exec() where default case is missing STYLE SF_SWITCH_NO_DEFAULT 101-112 Medium

org.woehlke.computer.kurzweil.tabs.dla.views.DiffusionLimitedAggregationTabPane

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.dla.views.DiffusionLimitedAggregationTabPane.getStartStopButtonsPanel() may expose internal representation by returning DiffusionLimitedAggregationTabPane.startStopButtonsPanel MALICIOUS_CODE EI_EXPOSE_REP 21 Medium
org.woehlke.computer.kurzweil.tabs.dla.views.DiffusionLimitedAggregationTabPane.getTab() may expose internal representation by returning DiffusionLimitedAggregationTabPane.tab MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
new org.woehlke.computer.kurzweil.tabs.dla.views.DiffusionLimitedAggregationTabPane(DiffusionLimitedAggregationTab) may expose internal representation by storing an externally mutable object into DiffusionLimitedAggregationTabPane.tab MALICIOUS_CODE EI_EXPOSE_REP2 26 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab.getCanvas() may expose internal representation by returning MandelbrotTab.canvas MALICIOUS_CODE EI_EXPOSE_REP 36 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab.getMandelbrotModel() may expose internal representation by returning MandelbrotTab.mandelbrotModel MALICIOUS_CODE EI_EXPOSE_REP 38 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab.getMandelbrotTabPane() may expose internal representation by returning MandelbrotTab.mandelbrotTabPane MALICIOUS_CODE EI_EXPOSE_REP 37 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab.getTabCtx() may expose internal representation by returning MandelbrotTab.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 35 Medium
Overridable method addMouseListener is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab(ComputerKurzweilTabbedPane). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 52 Low
Class org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.MandelbrotTab implements same interface as superclass STYLE RI_REDUNDANT_INTERFACES 27-124 Low

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas.getLayout() may expose internal representation by returning MandelbrotCanvas.layout MALICIOUS_CODE EI_EXPOSE_REP 44 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas.getModel() may expose internal representation by returning MandelbrotCanvas.model MALICIOUS_CODE EI_EXPOSE_REP 46 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas.getPreferredSize() may expose internal representation by returning MandelbrotCanvas.preferredSize MALICIOUS_CODE EI_EXPOSE_REP 47 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas.getTabCtx() may expose internal representation by returning MandelbrotCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 42 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.canvas.MandelbrotCanvas(MandelbrotContext) may expose internal representation by storing an externally mutable object into MandelbrotCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 50 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext.getCanvas() may expose internal representation by returning MandelbrotContext.canvas MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext.getController() may expose internal representation by returning MandelbrotContext.controller MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext.getTab() may expose internal representation by returning MandelbrotContext.tab MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext.getTabModel() may expose internal representation by returning MandelbrotContext.tabModel MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.config.MandelbrotContext(MandelbrotTab, ComputerKurzweilContext) may expose internal representation by storing an externally mutable object into MandelbrotContext.tab MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController

Bug Category Details Line Priority
Dead store to $L2 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController.run() STYLE DLS_DEAD_LOCAL_STORE 45 Medium
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController.exit() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 51 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController.run() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 38 High
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController(MandelbrotModel, MandelbrotTab) may expose internal representation by storing an externally mutable object into MandelbrotController.mandelbrotModel MALICIOUS_CODE EI_EXPOSE_REP2 31 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController(MandelbrotModel, MandelbrotTab) may expose internal representation by storing an externally mutable object into MandelbrotController.tab MALICIOUS_CODE EI_EXPOSE_REP2 30 Medium
Synchronization on MandelbrotController.goOn in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 52 Medium
Unread field: org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.control.MandelbrotController.THREAD_SLEEP_TIME; should this field be static? PERFORMANCE SS_SHOULD_BE_STATIC 25 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel.getGaussianNumberPlane() may expose internal representation by returning MandelbrotModel.gaussianNumberPlane MALICIOUS_CODE EI_EXPOSE_REP 102 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel.getMandelbrotTabStateMachine() may expose internal representation by returning MandelbrotModel.mandelbrotTabStateMachine MALICIOUS_CODE EI_EXPOSE_REP 32 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel.getProperties() may expose internal representation by returning MandelbrotModel.properties MALICIOUS_CODE EI_EXPOSE_REP 34 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel.getTab() may expose internal representation by returning MandelbrotModel.tab MALICIOUS_CODE EI_EXPOSE_REP 106 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel(ComputerKurzweilProperties, MandelbrotTab) may expose internal representation by storing an externally mutable object into MandelbrotModel.properties MALICIOUS_CODE EI_EXPOSE_REP2 38 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel(ComputerKurzweilProperties, MandelbrotTab) may expose internal representation by storing an externally mutable object into MandelbrotModel.tab MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel$1

Bug Category Details Line Priority
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.MandelbrotModel$1.<static initializer for 1>() STYLE DLS_DEAD_LOCAL_STORE 48 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.state.MandelbrotTabStateMachine$1

Bug Category Details Line Priority
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.state.MandelbrotTabStateMachine$1.<static initializer for 1>() STYLE DLS_DEAD_LOCAL_STORE 28 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.MandelbrotTuringMachine

Bug Category Details Line Priority
Overridable method start is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.MandelbrotTuringMachine(MandelbrotModel). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 30 Low

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.MandelbrotTuringMachine$1

Bug Category Details Line Priority
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.MandelbrotTuringMachine$1.<static initializer for 1>() STYLE DLS_DEAD_LOCAL_STORE 41 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point

Bug Category Details Line Priority
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.y in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.moveDown() MT_CORRECTNESS VO_VOLATILE_INCREMENT 50 Medium
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.x in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.moveLeft() MT_CORRECTNESS VO_VOLATILE_INCREMENT 54 Medium
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.x in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.moveRight() MT_CORRECTNESS VO_VOLATILE_INCREMENT 46 Medium
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.y in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.Point.moveUp() MT_CORRECTNESS VO_VOLATILE_INCREMENT 42 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPhaseState

Bug Category Details Line Priority
Overridable method start is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPhaseState(). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 21 Low

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions.getTuringPosition() may expose internal representation by returning TuringPositions.turingPosition MALICIOUS_CODE EI_EXPOSE_REP 43 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions(Point) may expose internal representation by storing an externally mutable object into TuringPositions.worldDimensions MALICIOUS_CODE EI_EXPOSE_REP2 27 Medium
Overridable method start is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions(Point). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 28 Low
Increment of volatile field org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions.steps in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions.goForward() MT_CORRECTNESS VO_VOLATILE_INCREMENT 47 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions$1

Bug Category Details Line Priority
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.model.turing.TuringPositions$1.<static initializer for 1>() STYLE DLS_DEAD_LOCAL_STORE 48 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.MandelbrotTabPane

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.MandelbrotTabPane.getStartStopButtonsPanel() may expose internal representation by returning MandelbrotTabPane.startStopButtonsPanel MALICIOUS_CODE EI_EXPOSE_REP 21 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.MandelbrotTabPane.getTab() may expose internal representation by returning MandelbrotTabPane.tab MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.MandelbrotTabPane(MandelbrotTab) may expose internal representation by storing an externally mutable object into MandelbrotTabPane.tab MALICIOUS_CODE EI_EXPOSE_REP2 26 Medium

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelButtons

Bug Category Details Line Priority
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelButtons(MandelbrotModel) may expose internal representation by storing an externally mutable object into PanelButtons.model MALICIOUS_CODE EI_EXPOSE_REP2 34 Medium
Overridable method addActionListener is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelButtons(MandelbrotModel). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 39 Low

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode.getMandelbrotModel() may expose internal representation by returning PanelChooseMouseClickMode.mandelbrotModel MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode.getRadioButtonsGroup() may expose internal representation by returning PanelChooseMouseClickMode.radioButtonsGroup MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode.getRadioButtonsSwitch() may expose internal representation by returning PanelChooseMouseClickMode.radioButtonsSwitch MALICIOUS_CODE EI_EXPOSE_REP 24 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode.getRadioButtonsZoom() may expose internal representation by returning PanelChooseMouseClickMode.radioButtonsZoom MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode.getTabCtx() may expose internal representation by returning PanelChooseMouseClickMode.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 21 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode(MandelbrotContext) may expose internal representation by storing an externally mutable object into PanelChooseMouseClickMode.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 34 Medium
Overridable method getRadioButtonsSwitch is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode(MandelbrotContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 50 Low
Overridable method getRadioButtonsZoom is called from constructor new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelChooseMouseClickMode(MandelbrotContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 51 Low

org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom.getTabCtx() may expose internal representation by returning PanelZoom.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 16 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom.getZoomLevelField() may expose internal representation by returning PanelZoom.zoomLevelField MALICIOUS_CODE EI_EXPOSE_REP 19 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom.getZoomLevelFieldLabel() may expose internal representation by returning PanelZoom.zoomLevelFieldLabel MALICIOUS_CODE EI_EXPOSE_REP 18 Medium
org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom.getZoomOutButton() may expose internal representation by returning PanelZoom.zoomOutButton MALICIOUS_CODE EI_EXPOSE_REP 20 Medium
new org.woehlke.computer.kurzweil.tabs.mandelbrot2julia.views.PanelZoom(MandelbrotContext) may expose internal representation by storing an externally mutable object into PanelZoom.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 27 Medium

org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab.getCanvas() may expose internal representation by returning RandomWalkTab.canvas MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab.getRandomWalkTabPane() may expose internal representation by returning RandomWalkTab.randomWalkTabPane MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab.getTabCtx() may expose internal representation by returning RandomWalkTab.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab.getTabModel() may expose internal representation by returning RandomWalkTab.tabModel MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
Overridable method addActionListener is called from constructor new org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab(ComputerKurzweilTabbedPane). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 41 Low
Class org.woehlke.computer.kurzweil.tabs.randomwalk.RandomWalkTab implements same interface as superclass STYLE RI_REDUNDANT_INTERFACES 18-80 Low

org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas.getLayout() may expose internal representation by returning RandomWalkCanvas.layout MALICIOUS_CODE EI_EXPOSE_REP 44 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas.getParticlePosition() may expose internal representation by returning RandomWalkCanvas.particlePosition MALICIOUS_CODE EI_EXPOSE_REP 47 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas.getPreferredSize() may expose internal representation by returning RandomWalkCanvas.preferredSize MALICIOUS_CODE EI_EXPOSE_REP 43 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas.getTabCtx() may expose internal representation by returning RandomWalkCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 40 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas.getTabModel() may expose internal representation by returning RandomWalkCanvas.tabModel MALICIOUS_CODE EI_EXPOSE_REP 41 Medium
new org.woehlke.computer.kurzweil.tabs.randomwalk.canvas.RandomWalkCanvas(RandomWalkContext) may expose internal representation by storing an externally mutable object into RandomWalkCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 55 Medium

org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext.getCanvas() may expose internal representation by returning RandomWalkContext.canvas MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext.getController() may expose internal representation by returning RandomWalkContext.controller MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext.getTab() may expose internal representation by returning RandomWalkContext.tab MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext.getTabModel() may expose internal representation by returning RandomWalkContext.tabModel MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
new org.woehlke.computer.kurzweil.tabs.randomwalk.config.RandomWalkContext(RandomWalkTab) may expose internal representation by storing an externally mutable object into RandomWalkContext.tab MALICIOUS_CODE EI_EXPOSE_REP2 35 Medium

org.woehlke.computer.kurzweil.tabs.randomwalk.control.RandomWalkController

Bug Category Details Line Priority
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.control.RandomWalkController.exit() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 73 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.control.RandomWalkController.run() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 52 High
org.woehlke.computer.kurzweil.tabs.randomwalk.control.RandomWalkController.getTabCtx() may expose internal representation by returning RandomWalkController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 33 Medium
new org.woehlke.computer.kurzweil.tabs.randomwalk.control.RandomWalkController(RandomWalkContext) may expose internal representation by storing an externally mutable object into RandomWalkController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 42 Medium
Synchronization on RandomWalkController.goOn in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 74 Medium

org.woehlke.computer.kurzweil.tabs.randomwalk.model.ParticleOrientation

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.randomwalk.model.ParticleOrientation.getMove() may expose internal representation by returning ParticleOrientation.move MALICIOUS_CODE EI_EXPOSE_REP 19 Medium

org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel

Bug Category Details Line Priority
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.exec() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 48 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.start() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 80 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.stop() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 88 High
org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.getLattice() may expose internal representation by returning RandomWalkModel.lattice MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.getParticlePosition() may expose internal representation by returning RandomWalkModel.particlePosition MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.getPreferredSize() may expose internal representation by returning RandomWalkModel.preferredSize MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.getTabCtx() may expose internal representation by returning RandomWalkModel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 22 Medium
new org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel(RandomWalkContext) may expose internal representation by storing an externally mutable object into RandomWalkModel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 36 Medium
Synchronization on RandomWalkModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 81 Medium
Synchronization on RandomWalkModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 89 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.model.RandomWalkModel.lattice is a volatile reference to an array; the array elements are non-volatile MT_CORRECTNESS VO_VOLATILE_REFERENCE_TO_ARRAY Not available Low

org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkButtons

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkButtons.getCanvas() may expose internal representation by returning RandomWalkButtons.canvas MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkButtons.getLayout() may expose internal representation by returning RandomWalkButtons.layout MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
new org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkButtons(RandomWalkCanvas) may expose internal representation by storing an externally mutable object into RandomWalkButtons.canvas MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium
Overridable method showMe is called from constructor new org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkButtons(RandomWalkCanvas). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 39 Low

org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkTabPane

Bug Category Details Line Priority
new org.woehlke.computer.kurzweil.tabs.randomwalk.views.RandomWalkTabPane(RandomWalkTab) may expose internal representation by storing an externally mutable object into RandomWalkTabPane.randomWalkTab MALICIOUS_CODE EI_EXPOSE_REP2 22 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab.getCanvas() may expose internal representation by returning SimulatedEvolutionTab.canvas MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab.getTabCtx() may expose internal representation by returning SimulatedEvolutionTab.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab.getTabModel() may expose internal representation by returning SimulatedEvolutionTab.tabModel MALICIOUS_CODE EI_EXPOSE_REP 31 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab.getTabPane() may expose internal representation by returning SimulatedEvolutionTab.tabPane MALICIOUS_CODE EI_EXPOSE_REP 32 Medium
Overridable method getCtx is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab(ComputerKurzweilTabbedPane). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 40 Low
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.SimulatedEvolutionTab implements same interface as superclass STYLE RI_REDUNDANT_INTERFACES 21-116 Low

org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas.getLayout() may expose internal representation by returning SimulatedEvolutionCanvas.layout MALICIOUS_CODE EI_EXPOSE_REP 49 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas.getPreferredSize() may expose internal representation by returning SimulatedEvolutionCanvas.preferredSize MALICIOUS_CODE EI_EXPOSE_REP 50 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas.getTab() may expose internal representation by returning SimulatedEvolutionCanvas.tab MALICIOUS_CODE EI_EXPOSE_REP 51 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas.getTabCtx() may expose internal representation by returning SimulatedEvolutionCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 47 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas.getTabModel() may expose internal representation by returning SimulatedEvolutionCanvas.tabModel MALICIOUS_CODE EI_EXPOSE_REP 52 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.canvas.SimulatedEvolutionCanvas(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into SimulatedEvolutionCanvas.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext.getCanvas() may expose internal representation by returning SimulatedEvolutionContext.canvas MALICIOUS_CODE EI_EXPOSE_REP 29 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext.getController() may expose internal representation by returning SimulatedEvolutionContext.controller MALICIOUS_CODE EI_EXPOSE_REP 32 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext.getTab() may expose internal representation by returning SimulatedEvolutionContext.tab MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext.getTabModel() may expose internal representation by returning SimulatedEvolutionContext.tabModel MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.config.SimulatedEvolutionContext(SimulatedEvolutionTab, ComputerKurzweilContext) may expose internal representation by storing an externally mutable object into SimulatedEvolutionContext.tab MALICIOUS_CODE EI_EXPOSE_REP2 38 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController

Bug Category Details Line Priority
Dead store to threadSleepTime in org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController.run() STYLE DLS_DEAD_LOCAL_STORE 72 Medium
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController.exit() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 101 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController.run() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 75 High
org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController.getModel() may expose internal representation by returning SimulatedEvolutionController.model MALICIOUS_CODE EI_EXPOSE_REP 51 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController.getTabCtx() may expose internal representation by returning SimulatedEvolutionController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 45 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController.getView() may expose internal representation by returning SimulatedEvolutionController.view MALICIOUS_CODE EI_EXPOSE_REP 50 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.control.SimulatedEvolutionController(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into SimulatedEvolutionController.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium
Synchronization on SimulatedEvolutionController.goOn in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 102 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel

Bug Category Details Line Priority
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.exec() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 140 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.start() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 80 High
Synchronization on Boolean in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.stop() MT_CORRECTNESS DL_SYNCHRONIZATION_ON_BOOLEAN 88 High
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.getAppCtx() may expose internal representation by returning SimulatedEvolutionModel.appCtx MALICIOUS_CODE EI_EXPOSE_REP 51 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.getPopulationContainer() may expose internal representation by returning SimulatedEvolutionModel.populationContainer MALICIOUS_CODE EI_EXPOSE_REP 55 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.getWorldLattice() may expose internal representation by returning SimulatedEvolutionModel.worldLattice MALICIOUS_CODE EI_EXPOSE_REP 52 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel.getWorldParameter() may expose internal representation by returning SimulatedEvolutionModel.worldParameter MALICIOUS_CODE EI_EXPOSE_REP 56 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.SimulatedEvolutionModel(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into SimulatedEvolutionModel.appCtx MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium
Synchronization on SimulatedEvolutionModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 81 Medium
Synchronization on SimulatedEvolutionModel.running in futile attempt to guard it MT_CORRECTNESS ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD 89 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell.getPosition() may expose internal representation by returning Cell.position MALICIOUS_CODE EI_EXPOSE_REP 121 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into Cell.appCtx MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell(CellCore, LatticePoint, CellOrientation, CellLifeCycle, SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into Cell.appCtx MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.Cell(CellCore, LatticePoint, CellOrientation, CellLifeCycle, SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into Cell.position MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellCore

Bug Category Details Line Priority
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellCore(Integer[], ComputerKurzweilContext) may expose internal representation by storing an externally mutable object into CellCore.dna MALICIOUS_CODE EI_EXPOSE_REP2 26 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle.getCellConf() may expose internal representation by returning CellLifeCycle.cellConf MALICIOUS_CODE EI_EXPOSE_REP 37 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle(ComputerKurzweilProperties$SimulatedEvolution$CellConf) may expose internal representation by storing an externally mutable object into CellLifeCycle.cellConf MALICIOUS_CODE EI_EXPOSE_REP2 40 Medium
Class org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellLifeCycle defines non-transient non-serializable instance field cellConf BAD_PRACTICE SE_BAD_FIELD Not available Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellOrientation

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.cell.CellOrientation.getMove() may expose internal representation by returning CellOrientation.move MALICIOUS_CODE EI_EXPOSE_REP 30 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer

Bug Category Details Line Priority
Dead store to e in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer.getCurrentGeneration() STYLE DLS_DEAD_LOCAL_STORE 102 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer.getCells() may expose internal representation by returning CellPopulationContainer.cells MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer.getStatistics() may expose internal representation by returning CellPopulationContainer.statistics MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer.getTabCtx() may expose internal representation by returning CellPopulationContainer.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into CellPopulationContainer.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 35 Medium
Overridable method createInitialPopulation is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer(SimulatedEvolutionContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 40 Low
Exception is caught when Exception is not thrown in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer.getCurrentGeneration() STYLE REC_CATCH_EXCEPTION 102
Switch statement found in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer.countPopulation() where default case is missing STYLE SF_SWITCH_NO_DEFAULT 64-81 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer$1

Bug Category Details Line Priority
Dead store to $L0 in org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.population.CellPopulationContainer$1.<static initializer for 1>() STYLE DLS_DEAD_LOCAL_STORE 64 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.world.WorldLattice

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.world.WorldLattice.getAppCtx() may expose internal representation by returning WorldLattice.appCtx MALICIOUS_CODE EI_EXPOSE_REP 45 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.world.WorldLattice.getWorldMapFoodLattice() may expose internal representation by returning WorldLattice.worldMapFoodLattice MALICIOUS_CODE EI_EXPOSE_REP 41 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.model.world.WorldLattice(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into WorldLattice.appCtx MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium

org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel.getFullAgeCellsElement() may expose internal representation by returning GetPopulationLifeCyclePanel.fullAgeCellsElement MALICIOUS_CODE EI_EXPOSE_REP 35 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel.getHungryCellsElement() may expose internal representation by returning GetPopulationLifeCyclePanel.hungryCellsElement MALICIOUS_CODE EI_EXPOSE_REP 36 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel.getOldCellsElement() may expose internal representation by returning GetPopulationLifeCyclePanel.oldCellsElement MALICIOUS_CODE EI_EXPOSE_REP 37 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel.getTabCtx() may expose internal representation by returning GetPopulationLifeCyclePanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 31 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel.getYoungAndFatCellsElement() may expose internal representation by returning GetPopulationLifeCyclePanel.youngAndFatCellsElement MALICIOUS_CODE EI_EXPOSE_REP 34 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel.getYoungCellsElement() may expose internal representation by returning GetPopulationLifeCyclePanel.youngCellsElement MALICIOUS_CODE EI_EXPOSE_REP 33 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into GetPopulationLifeCyclePanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 46 Medium
Overridable method update is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationLifeCyclePanel(SimulatedEvolutionContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 82 Low

org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel.getPopulationnField() may expose internal representation by returning GetPopulationStatisticsPanel.populationnField MALICIOUS_CODE EI_EXPOSE_REP 30 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel.getTabCtx() may expose internal representation by returning GetPopulationStatisticsPanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel.getWorldIterationField() may expose internal representation by returning GetPopulationStatisticsPanel.worldIterationField MALICIOUS_CODE EI_EXPOSE_REP 31 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into GetPopulationStatisticsPanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 41 Medium
Overridable method update is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.GetPopulationStatisticsPanel(SimulatedEvolutionContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 58 Low

org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel.getFoodPerDayDecreaseButton() may expose internal representation by returning SetFoodPerDayPanel.foodPerDayDecreaseButton MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel.getFoodPerDayIncreaseButton() may expose internal representation by returning SetFoodPerDayPanel.foodPerDayIncreaseButton MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel.getFoodPerDayInput() may expose internal representation by returning SetFoodPerDayPanel.foodPerDayInput MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel.getFoodPerDayLabel() may expose internal representation by returning SetFoodPerDayPanel.foodPerDayLabel MALICIOUS_CODE EI_EXPOSE_REP 24 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel.getTabCtx() may expose internal representation by returning SetFoodPerDayPanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into SetFoodPerDayPanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 34 Medium
Overridable method update is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetFoodPerDayPanel(SimulatedEvolutionContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 47 Low

org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel.getBgroup() may expose internal representation by returning SetGardenOfEdenPanel.bgroup MALICIOUS_CODE EI_EXPOSE_REP 27 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel.getButtonRestart() may expose internal representation by returning SetGardenOfEdenPanel.buttonRestart MALICIOUS_CODE EI_EXPOSE_REP 28 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel.getGardenOfEdenDisabled() may expose internal representation by returning SetGardenOfEdenPanel.gardenOfEdenDisabled MALICIOUS_CODE EI_EXPOSE_REP 26 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel.getGardenOfEdenEnabled() may expose internal representation by returning SetGardenOfEdenPanel.gardenOfEdenEnabled MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel.getTabCtx() may expose internal representation by returning SetGardenOfEdenPanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel(SimulatedEvolutionContext) may expose internal representation by storing an externally mutable object into SetGardenOfEdenPanel.tabCtx MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium
Overridable method update is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SetGardenOfEdenPanel(SimulatedEvolutionContext). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 42 Low

org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane.getGardenOfEdenPanel() may expose internal representation by returning SimulatedEvolutionTabPane.gardenOfEdenPanel MALICIOUS_CODE EI_EXPOSE_REP 23 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane.getSetFoodPerDayPanel() may expose internal representation by returning SimulatedEvolutionTabPane.setFoodPerDayPanel MALICIOUS_CODE EI_EXPOSE_REP 22 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane.getStartStopButtonsPanel() may expose internal representation by returning SimulatedEvolutionTabPane.startStopButtonsPanel MALICIOUS_CODE EI_EXPOSE_REP 25 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane.getStatisticsPanelCounted() may expose internal representation by returning SimulatedEvolutionTabPane.statisticsPanelCounted MALICIOUS_CODE EI_EXPOSE_REP 21 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane.getStatisticsPanelPanelLifeCycle() may expose internal representation by returning SimulatedEvolutionTabPane.statisticsPanelPanelLifeCycle MALICIOUS_CODE EI_EXPOSE_REP 20 Medium
Overridable method getStartStopButtonsPanel is called from constructor new org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.SimulatedEvolutionTabPane(SimulatedEvolutionTab). MALICIOUS_CODE MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR 45 Low

org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.population.PopulationStatisticsElement

Bug Category Details Line Priority
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.population.PopulationStatisticsElement.getLabel() may expose internal representation by returning PopulationStatisticsElement.label MALICIOUS_CODE EI_EXPOSE_REP 18 Medium
org.woehlke.computer.kurzweil.tabs.simulatedevolution.views.population.PopulationStatisticsElement.getStatistics() may expose internal representation by returning PopulationStatisticsElement.statistics MALICIOUS_CODE EI_EXPOSE_REP 19 Medium