SpotBugs Bug Detector Report
The following document contains the results of SpotBugs
SpotBugs Version is 4.8.6
Threshold is medium
Effort is default
Summary
Classes | Bugs | Errors | Missing Classes |
---|---|---|---|
194 | 177 | 0 | 0 |
Files
nl.tudelft.simulation.dsol.swing.animation.d2.AnimationPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.animation.d2.AnimationPanel at new nl.tudelft.simulation.dsol.swing.animation.d2.AnimationPanel(Bounds2d, SimulatorInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 51 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.AnimationPanel(Bounds2d, SimulatorInterface) may expose internal representation by storing an externally mutable object into AnimationPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 53 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.AnimationUpdaterThread
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.animation.d2.AnimationUpdaterThread.getUpdateFrequency() may expose internal representation by returning AnimationUpdaterThread.updateFrequency | MALICIOUS_CODE | EI_EXPOSE_REP | 109 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.AnimationUpdaterThread(EventProducer) may expose internal representation by storing an externally mutable object into AnimationUpdaterThread.eventProducer | MALICIOUS_CODE | EI_EXPOSE_REP2 | 55 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.AnimationUpdaterThread.setUpdateFrequency(Frequency) may expose internal representation by storing an externally mutable object into AnimationUpdaterThread.updateFrequency | MALICIOUS_CODE | EI_EXPOSE_REP2 | 118 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.AutoPanAnimationPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Unwritten field: nl.tudelft.simulation.dsol.swing.animation.d2.AutoPanAnimationPanel.lastFollowedObject | CORRECTNESS | UWF_UNWRITTEN_FIELD | 212 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.InputListener
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.animation.d2.InputListener(VisualizationPanel) may expose internal representation by storing an externally mutable object into InputListener.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 52 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel at new nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel(Bounds2d, EventProducer) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 225 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel at new nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel(Bounds2d, EventProducer, ContextInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 239 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel.getAnimationEventProducer() may expose internal representation by returning VisualizationPanel.animationEventProducer | MALICIOUS_CODE | EI_EXPOSE_REP | 1001 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel.getDragLine() may expose internal representation by returning VisualizationPanel.dragLine | MALICIOUS_CODE | EI_EXPOSE_REP | 945 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel.getElements() may expose internal representation by returning VisualizationPanel.elements | MALICIOUS_CODE | EI_EXPOSE_REP | 969 | Medium |
Inconsistent synchronization of nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel.extent; locked 92% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 404 | Medium |
Inconsistent synchronization of nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel.renderableScale; locked 66% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 676 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel.isShowClass(Class) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 329 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel$AnimationEventProducer
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should nl.tudelft.simulation.dsol.swing.animation.d2.VisualizationPanel$AnimationEventProducer be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 982-992 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.HomeAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.HomeAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 40 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.HomeAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into HomeAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 38 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanDownAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanDownAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 42 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanDownAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into PanDownAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 40 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanLeftAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanLeftAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 41 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanLeftAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into PanLeftAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanRightAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanRightAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 41 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanRightAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into PanRightAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanUpAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanUpAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 40 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.PanUpAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into PanUpAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.ShowGridAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.ShowGridAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into ShowGridAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 34 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.ZoomInAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.ZoomInAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 40 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.ZoomInAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into ZoomInAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
nl.tudelft.simulation.dsol.swing.animation.d2.actions.ZoomOutAction
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Hard coded reference to an absolute pathname in new nl.tudelft.simulation.dsol.swing.animation.d2.actions.ZoomOutAction(VisualizationPanel) | STYLE | DMI_HARDCODED_ABSOLUTE_FILENAME | 41 | Medium |
new nl.tudelft.simulation.dsol.swing.animation.d2.actions.ZoomOutAction(VisualizationPanel) may expose internal representation by storing an externally mutable object into ZoomOutAction.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 39 | Medium |
nl.tudelft.simulation.dsol.swing.charts.boxwhisker.BoxAndWhiskerChart
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.charts.boxwhisker.BoxAndWhiskerChart.getChart() may expose internal representation by returning BoxAndWhiskerChart.chart | MALICIOUS_CODE | EI_EXPOSE_REP | 116 | Medium |
nl.tudelft.simulation.dsol.swing.charts.boxwhisker.BoxAndWhiskerPlot
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
int value cast to float and then passed to Math.round in nl.tudelft.simulation.dsol.swing.charts.boxwhisker.BoxAndWhiskerPlot.paintTally(Graphics2D, Rectangle2D, TallyStatistic, double, double, double) | CORRECTNESS | ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND | 239 | Medium |
nl.tudelft.simulation.dsol.swing.charts.histogram.Histogram
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.charts.histogram.Histogram.getChart() may expose internal representation by returning Histogram.chart | MALICIOUS_CODE | EI_EXPOSE_REP | 171 | Medium |
nl.tudelft.simulation.dsol.swing.charts.histogram.Histogram.getDataset() may expose internal representation by returning Histogram.dataset | MALICIOUS_CODE | EI_EXPOSE_REP | 189 | Medium |
nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramDataset
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramDataset(Comparable, double[], double[], int) may expose internal representation by storing an externally mutable object into HistogramDataset.domain | MALICIOUS_CODE | EI_EXPOSE_REP2 | 55 | Medium |
new nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramDataset(Comparable, double[], double[], int) may expose internal representation by storing an externally mutable object into HistogramDataset.range | MALICIOUS_CODE | EI_EXPOSE_REP2 | 56 | Medium |
nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramDataset doesn't override org.jfree.data.statistics.SimpleHistogramDataset.equals(Object) | STYLE | EQ_DOESNT_OVERRIDE_EQUALS | 1 | Medium |
nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramDomainAxis
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramDomainAxis doesn't override org.jfree.chart.axis.NumberAxis.equals(Object) | STYLE | EQ_DOESNT_OVERRIDE_EQUALS | 1 | Medium |
nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramSeries$Bin
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should nl.tudelft.simulation.dsol.swing.charts.histogram.HistogramSeries$Bin be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 178-278 | Medium |
nl.tudelft.simulation.dsol.swing.charts.xy.XYChart
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.charts.xy.XYChart at new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 194 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.charts.xy.XYChart at new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double, short) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 218 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.charts.xy.XYChart at new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double, double[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 242 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.charts.xy.XYChart at new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 183 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.charts.xy.XYChart at new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double[], short) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 206 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.charts.xy.XYChart at new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double[], double[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 230 | Medium |
nl.tudelft.simulation.dsol.swing.charts.xy.XYChart.getChart() may expose internal representation by returning XYChart.chart | MALICIOUS_CODE | EI_EXPOSE_REP | 300 | Medium |
nl.tudelft.simulation.dsol.swing.charts.xy.XYChart.getDataset() may expose internal representation by returning XYChart.dataset | MALICIOUS_CODE | EI_EXPOSE_REP | 319 | Medium |
new nl.tudelft.simulation.dsol.swing.charts.xy.XYChart(SimulatorInterface, String, double[], double[], short) may expose internal representation by storing an externally mutable object into XYChart.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 90 | Medium |
nl.tudelft.simulation.dsol.swing.charts.xy.XYDataset
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
The class name nl.tudelft.simulation.dsol.swing.charts.xy.XYDataset shadows the simple name of implemented interface org.jfree.data.xy.XYDataset | BAD_PRACTICE | NM_SAME_SIMPLE_NAME_AS_INTERFACE | 33-141 | Medium |
nl.tudelft.simulation.dsol.swing.charts.xy.XYSeries
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.charts.xy.XYSeries(String, SimulatorInterface, short, double) may expose internal representation by storing an externally mutable object into XYSeries.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 71 | Medium |
nl.tudelft.simulation.dsol.swing.charts.xy.XYSeries.setFilter(FilterInterface) may expose internal representation by storing an externally mutable object into XYSeries.filter | MALICIOUS_CODE | EI_EXPOSE_REP2 | 190 | Medium |
Inconsistent synchronization of nl.tudelft.simulation.dsol.swing.charts.xy.XYSeries.filter; locked 50% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 190 | Medium |
nl.tudelft.simulation.dsol.swing.gui.ConsoleLogger$ConsoleLogWriter
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.gui.ConsoleLogger$ConsoleLogWriter(JTextPane) may expose internal representation by storing an externally mutable object into ConsoleLogger$ConsoleLogWriter.textPane | MALICIOUS_CODE | EI_EXPOSE_REP2 | 165 | Medium |
nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in new nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput(): new java.io.PrintStream(OutputStream) | I18N | DM_DEFAULT_ENCODING | 47 | High |
nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput$CustomErrorStream
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput$CustomErrorStream(JTextArea, PrintStream) may expose internal representation by storing an externally mutable object into ConsoleOutput$CustomErrorStream.standardErr | MALICIOUS_CODE | EI_EXPOSE_REP2 | 101 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput$CustomErrorStream(JTextArea, PrintStream) may expose internal representation by storing an externally mutable object into ConsoleOutput$CustomErrorStream.textArea | MALICIOUS_CODE | EI_EXPOSE_REP2 | 100 | Medium |
nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput$CustomOutputStream
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput$CustomOutputStream(JTextArea, PrintStream) may expose internal representation by storing an externally mutable object into ConsoleOutput$CustomOutputStream.standardOut | MALICIOUS_CODE | EI_EXPOSE_REP2 | 71 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.ConsoleOutput$CustomOutputStream(JTextArea, PrintStream) may expose internal representation by storing an externally mutable object into ConsoleOutput$CustomOutputStream.textArea | MALICIOUS_CODE | EI_EXPOSE_REP2 | 70 | Medium |
nl.tudelft.simulation.dsol.swing.gui.DsolApplication
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in new nl.tudelft.simulation.dsol.swing.gui.DsolApplication(DsolPanel, String): new java.io.FileReader(String) | I18N | DM_DEFAULT_ENCODING | 127 | High |
nl.tudelft.simulation.dsol.swing.gui.DsolApplication.getDsolPanel() may expose internal representation by returning DsolApplication.panel | MALICIOUS_CODE | EI_EXPOSE_REP | 338 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.DsolApplication(DsolPanel, String) may expose internal representation by storing an externally mutable object into DsolApplication.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 76 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.DsolApplication(DsolPanel, String) may fail to clean up java.io.Reader | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 127 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.DsolApplication(DsolPanel, String) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 127 | Medium |
nl.tudelft.simulation.dsol.swing.gui.DsolApplication$2
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Found reliance on default encoding in nl.tudelft.simulation.dsol.swing.gui.DsolApplication$2.windowClosing(WindowEvent): new java.io.FileWriter(File) | I18N | DM_DEFAULT_ENCODING | 111 | High |
nl.tudelft.simulation.dsol.swing.gui.DsolApplication$2.windowClosing(WindowEvent) may fail to clean up java.io.Writer | EXPERIMENTAL | OBL_UNSATISFIED_OBLIGATION | 111 | Medium |
nl.tudelft.simulation.dsol.swing.gui.DsolApplication$2.windowClosing(WindowEvent) may fail to close stream | BAD_PRACTICE | OS_OPEN_STREAM | 111 | Medium |
Exceptional return value of java.io.File.mkdirs() ignored in nl.tudelft.simulation.dsol.swing.gui.DsolApplication$2.windowClosing(WindowEvent) | BAD_PRACTICE | RV_RETURN_VALUE_IGNORED_BAD_PRACTICE | 110 | Medium |
nl.tudelft.simulation.dsol.swing.gui.DsolApplication$SubMenuShower
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should nl.tudelft.simulation.dsol.swing.gui.DsolApplication$SubMenuShower be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 372-388 | Medium |
nl.tudelft.simulation.dsol.swing.gui.DsolPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.DsolPanel.getControlPanel() may expose internal representation by returning DsolPanel.controlPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 137 | Medium |
nl.tudelft.simulation.dsol.swing.gui.DsolPanel.getTabbedPane() may expose internal representation by returning DsolPanel.tabbedPane | MALICIOUS_CODE | EI_EXPOSE_REP | 120 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.DsolPanel(AbstractControlPanel) may expose internal representation by storing an externally mutable object into DsolPanel.controlPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 61 | Medium |
nl.tudelft.simulation.dsol.swing.gui.HtmlPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.HtmlPanel at new nl.tudelft.simulation.dsol.swing.gui.HtmlPanel() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 41 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.HtmlPanel at new nl.tudelft.simulation.dsol.swing.gui.HtmlPanel(URL) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 51 | Medium |
nl.tudelft.simulation.dsol.swing.gui.InputParametersTab
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.InputParametersTab at new nl.tudelft.simulation.dsol.swing.gui.InputParametersTab(DsolModel) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 45 | Medium |
nl.tudelft.simulation.dsol.swing.gui.TablePanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Boxing/unboxing to parse a primitive nl.tudelft.simulation.dsol.swing.gui.TablePanel.main(String[]) | PERFORMANCE | DM_BOXED_PRIMITIVE_FOR_PARSING | 177 | High |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationApplication
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationApplication.getAnimationTab() may expose internal representation by returning DsolAnimationApplication.animationTab | MALICIOUS_CODE | EI_EXPOSE_REP | 72 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationApplication(DsolPanel, String, DsolAnimationTab) may expose internal representation by storing an externally mutable object into DsolAnimationApplication.animationTab | MALICIOUS_CODE | EI_EXPOSE_REP2 | 61 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab at new nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab(SimulatorInterface, AnimationPanel) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 118 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab at new nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab(Bounds2d, SimulatorInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 102 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab.getAnimationPanel() may expose internal representation by returning DsolAnimationTab.animationPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 341 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab.getSearchPanel() may expose internal representation by returning DsolAnimationTab.searchPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 359 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab.getSimulator() may expose internal representation by returning DsolAnimationTab.simulator | MALICIOUS_CODE | EI_EXPOSE_REP | 382 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab.getTogglePanel() may expose internal representation by returning DsolAnimationTab.togglePanel | MALICIOUS_CODE | EI_EXPOSE_REP | 350 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab(SimulatorInterface, AnimationPanel) may expose internal representation by storing an externally mutable object into DsolAnimationTab.animationPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 121 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab(SimulatorInterface, AnimationPanel) may expose internal representation by storing an externally mutable object into DsolAnimationTab.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 120 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.DsolAnimationTab.setSearchPanel(SearchPanel) may expose internal representation by storing an externally mutable object into DsolAnimationTab.searchPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 202 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.panel.ButtonPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.gui.animation.panel.ButtonPanel(AnimationPanel) may expose internal representation by storing an externally mutable object into ButtonPanel.animationPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 40 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.panel.InfoTextPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.animation.panel.InfoTextPanel.getCoordinateFormatter() may expose internal representation by returning InfoTextPanel.coordinateFormatter | MALICIOUS_CODE | EI_EXPOSE_REP | 107 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.animation.panel.InfoTextPanel(AnimationPanel) may expose internal representation by storing an externally mutable object into InfoTextPanel.animationPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 57 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.panel.InfoTextPanel.setCoordinateFormatter(NumberFormat) may expose internal representation by storing an externally mutable object into InfoTextPanel.coordinateFormatter | MALICIOUS_CODE | EI_EXPOSE_REP2 | 116 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.panel.SearchPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.animation.panel.SearchPanel.getSearchPanelEventProducer() may expose internal representation by returning SearchPanel.searchPanelEventProducer | MALICIOUS_CODE | EI_EXPOSE_REP | 278 | Medium |
nl.tudelft.simulation.dsol.swing.gui.animation.panel.SearchPanel$SearchPanelEventProducer
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Should nl.tudelft.simulation.dsol.swing.gui.animation.panel.SearchPanel$SearchPanelEventProducer be a _static_ inner class? | PERFORMANCE | SIC_INNER_SHOULD_BE_STATIC | 259-269 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel at new nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel(DsolModel, SimulatorInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 95 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getClockPanel() may expose internal representation by returning AbstractControlPanel.clockPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 387 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getControlButtons() may expose internal representation by returning AbstractControlPanel.controlButtons | MALICIOUS_CODE | EI_EXPOSE_REP | 440 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getControlButtonsPanel() may expose internal representation by returning AbstractControlPanel.controlButtonsPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 448 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getModel() may expose internal representation by returning AbstractControlPanel.model | MALICIOUS_CODE | EI_EXPOSE_REP | 371 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getRunUntilPanel() may expose internal representation by returning AbstractControlPanel.runUntilPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 456 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getSimulator() may expose internal representation by returning AbstractControlPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP | 379 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.getSpeedPanel() may expose internal representation by returning AbstractControlPanel.speedPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 410 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel(DsolModel, SimulatorInterface) may expose internal representation by storing an externally mutable object into AbstractControlPanel.model | MALICIOUS_CODE | EI_EXPOSE_REP2 | 97 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel(DsolModel, SimulatorInterface) may expose internal representation by storing an externally mutable object into AbstractControlPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 98 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.setClockPanel(ClockPanel) may expose internal representation by storing an externally mutable object into AbstractControlPanel.clockPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 401 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.setRunUntilPanel(RunUntilPanel) may expose internal representation by storing an externally mutable object into AbstractControlPanel.runUntilPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 468 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel.setSpeedPanel(SpeedPanel) may expose internal representation by storing an externally mutable object into AbstractControlPanel.speedPanel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 424 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel$DisposeOnCloseThread
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel$DisposeOnCloseThread(AbstractControlPanel, AbstractControlPanel) may expose internal representation by storing an externally mutable object into AbstractControlPanel$DisposeOnCloseThread.panel | MALICIOUS_CODE | EI_EXPOSE_REP2 | 173 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.control.AbstractControlPanel$DisposeOnCloseThread(AbstractControlPanel, AbstractControlPanel) may expose internal representation by storing an externally mutable object into AbstractControlPanel$DisposeOnCloseThread.this$0 | MALICIOUS_CODE | EI_EXPOSE_REP2 | 172 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.ClockPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.control.ClockPanel.getSimulator() may expose internal representation by returning ClockPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP | 123 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.control.ClockPanel(SimulatorInterface) may expose internal representation by storing an externally mutable object into ClockPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 62 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.ClockPanel$TimeUpdateTask
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.control.ClockPanel$TimeUpdateTask is serializable and an inner class | BAD_PRACTICE | SE_INNER_CLASS | 88-106 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.RunSpeedSliderPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.control.RunSpeedSliderPanel at new nl.tudelft.simulation.dsol.swing.gui.control.RunSpeedSliderPanel(double, double, double, int, DevsSimulatorInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 59 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.RunUntilPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.control.RunUntilPanel.getSimulator() may expose internal representation by returning RunUntilPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP | 198 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.control.RunUntilPanel(SimulatorInterface, String, String) may expose internal representation by storing an externally mutable object into RunUntilPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 72 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.SpeedPanel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.control.SpeedPanel.getSimulator() may expose internal representation by returning SpeedPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP | 123 | Medium |
new nl.tudelft.simulation.dsol.swing.gui.control.SpeedPanel(SimulatorInterface) may expose internal representation by storing an externally mutable object into SpeedPanel.simulator | MALICIOUS_CODE | EI_EXPOSE_REP2 | 62 | Medium |
nl.tudelft.simulation.dsol.swing.gui.control.SpeedPanel$TimeUpdateTask
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.gui.control.SpeedPanel$TimeUpdateTask is serializable and an inner class | BAD_PRACTICE | SE_INNER_CLASS | 88-106 | Medium |
nl.tudelft.simulation.dsol.swing.gui.inputparameters.TabbedParameterDialog
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.gui.inputparameters.TabbedParameterDialog at new nl.tudelft.simulation.dsol.swing.gui.inputparameters.TabbedParameterDialog(InputParameterMap) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 96 | Medium |
nl.tudelft.simulation.dsol.swing.gui.util.Icons
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Do not catch NullPointerException like in nl.tudelft.simulation.dsol.swing.gui.util.Icons.loadGrayscaleIcon(String) | STYLE | DCN_NULLPOINTER_EXCEPTION | 57 | Medium |
Do not catch NullPointerException like in nl.tudelft.simulation.dsol.swing.gui.util.Icons.loadIcon(String) | STYLE | DCN_NULLPOINTER_EXCEPTION | 39 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel at new nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel(Property) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 77 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel at new nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel(Property, Introspector) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 98 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel(Property, Introspector) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 94 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel.getModelManager() may expose internal representation by returning CollectionTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP | 348 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel(Property, Introspector) may expose internal representation by storing an externally mutable object into CollectionTableModel.parentProperty | MALICIOUS_CODE | EI_EXPOSE_REP2 | 117 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel.setModelManager(ModelManager) may expose internal representation by storing an externally mutable object into CollectionTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP2 | 337 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.DefaultModelManager stored into non-transient field CollectionTableModel.manager | BAD_PRACTICE | SE_BAD_FIELD_STORE | 66 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel$CollectionProperty
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.gui.CollectionTableModel$CollectionProperty.getValue() invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 412 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ExpandButton
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.introspection.gui.ExpandButton(Property, IntrospectingTableModelInterface) may expose internal representation by storing an externally mutable object into ExpandButton.PROPERTY | MALICIOUS_CODE | EI_EXPOSE_REP2 | 58 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ExpandButton.setMyJTable(JTable) may expose internal representation by storing an externally mutable object into ExpandButton.myTable | MALICIOUS_CODE | EI_EXPOSE_REP2 | 79 | Medium |
Exception is caught when Exception is not thrown in nl.tudelft.simulation.dsol.swing.introspection.gui.ExpandButton.instantiateTable() | STYLE | REC_CATCH_EXCEPTION | 153 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel at new nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel(Property) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 70 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel at new nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel(Property, Introspector) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 91 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel(Property, Introspector) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 87 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel.getModelManager() may expose internal representation by returning ImmutableCollectionTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP | 266 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel(Property, Introspector) may expose internal representation by storing an externally mutable object into ImmutableCollectionTableModel.parentProperty | MALICIOUS_CODE | EI_EXPOSE_REP2 | 110 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel.setModelManager(ModelManager) may expose internal representation by storing an externally mutable object into ImmutableCollectionTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP2 | 255 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.DefaultModelManager stored into non-transient field ImmutableCollectionTableModel.manager | BAD_PRACTICE | SE_BAD_FIELD_STORE | 59 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel$ImmutableCollectionProperty
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.gui.ImmutableCollectionTableModel$ImmutableCollectionProperty.getValue() invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 323 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog at new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(Frame, Object, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 108 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog at new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(Window, Object) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 65 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog at new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(Window, String, JTable) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 131 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog at new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(Window, String, IntrospectingTableModelInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 97 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog at new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(Object, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 76 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog at new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(String, JTable) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 118 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.IntrospectionDialog(Window, String, JTable) may expose internal representation by storing an externally mutable object into IntrospectionDialog.parent | MALICIOUS_CODE | EI_EXPOSE_REP2 | 130 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel.getModelManager() may expose internal representation by returning MapTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP | 272 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel(Property, Introspector) may expose internal representation by storing an externally mutable object into MapTableModel.parentProperty | MALICIOUS_CODE | EI_EXPOSE_REP2 | 103 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel.setModelManager(ModelManager) may expose internal representation by storing an externally mutable object into MapTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP2 | 261 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.DefaultModelManager stored into non-transient field MapTableModel.manager | BAD_PRACTICE | SE_BAD_FIELD_STORE | 57 | Medium |
new nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel(Property, Introspector) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 92 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel$MapProperty
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.gui.MapTableModel$MapProperty.getValue() invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 329 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable at new nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable(IntrospectingTableModelInterface) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 71 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable at new nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable(IntrospectingTableModelInterface, TableColumnModel) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 95 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable at new nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable(IntrospectingTableModelInterface, TableColumnModel, ListSelectionModel) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 108 | Medium |
Exception thrown in class nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable at new nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable(IntrospectingTableModelInterface, CellPresentationConfiguration) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. | BAD_PRACTICE | CT_CONSTRUCTOR_THROW | 83 | Medium |
Exception is caught when Exception is not thrown in nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectJTable.initConfig() | STYLE | REC_CATCH_EXCEPTION | 206 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectTableModel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectTableModel.getValueAt(int, int) invokes inefficient new String(String) constructor | PERFORMANCE | DM_STRING_CTOR | 103 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectTableModel.getModelManager() may expose internal representation by returning ObjectTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP | 232 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.ObjectTableModel.setModelManager(ModelManager) may expose internal representation by storing an externally mutable object into ObjectTableModel.manager | MALICIOUS_CODE | EI_EXPOSE_REP2 | 222 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.DefaultModelManager stored into non-transient field ObjectTableModel.manager | BAD_PRACTICE | SE_BAD_FIELD_STORE | 40 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.gui.UpdateTimer
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Inconsistent synchronization of nl.tudelft.simulation.dsol.swing.introspection.gui.UpdateTimer.components; locked 72% of time | MT_CORRECTNESS | IS2_INCONSISTENT_SYNC | 96 | Medium |
Possible null pointer dereference in nl.tudelft.simulation.dsol.swing.introspection.gui.UpdateTimer.remove(Component) due to return value of called method | STYLE | NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE | 68 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.ArrayRenderer
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Exception is caught when Exception is not thrown in nl.tudelft.simulation.dsol.swing.introspection.mapping.ArrayRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int) | STYLE | REC_CATCH_EXCEPTION | 51 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.ArrayRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int) concatenates strings using + in a loop | PERFORMANCE | SBSC_USE_STRINGBUFFER_CONCATENATION | 48 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.DefaultConfiguration
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
Public static nl.tudelft.simulation.dsol.swing.introspection.mapping.DefaultConfiguration.getDefaultConfiguration() may expose internal representation by returning DefaultConfiguration.defaultConfig | MALICIOUS_CODE | MS_EXPOSE_REP | 66 | Medium |
Class (nl.tudelft.simulation.dsol.swing.introspection.mapping.DefaultConfiguration) using singleton design pattern has non-private constructor. | CORRECTNESS | SING_SINGLETON_HAS_NONPRIVATE_CONSTRUCTOR | 32-59 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.ExpandButtonEditor
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.mapping.ExpandButtonEditor.getCellEditorValue() may expose internal representation by returning ExpandButtonEditor.component | MALICIOUS_CODE | EI_EXPOSE_REP | 57 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.ImmutableMapRenderer
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.mapping.ImmutableMapRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 45 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.MapRenderer
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.mapping.MapRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int) makes inefficient use of keySet iterator instead of entrySet iterator | PERFORMANCE | WMI_WRONG_MAP_ITERATOR | 42 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.MyColorEditor
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.mapping.MyColorEditor.getTableCellEditorComponent(JTable, Object, boolean, int, int) may expose internal representation by returning MyColorEditor.cellPanel | MALICIOUS_CODE | EI_EXPOSE_REP | 99 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.SwingCellEditor
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.mapping.SwingCellEditor.getCellEditorValue() may expose internal representation by returning SwingCellEditor.component | MALICIOUS_CODE | EI_EXPOSE_REP | 46 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.mapping.SwingCellEditor.getTableCellEditorComponent(JTable, Object, boolean, int, int) may expose internal representation by storing an externally mutable object into SwingCellEditor.component | MALICIOUS_CODE | EI_EXPOSE_REP2 | 38 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.sortable.SortingHeaderCell
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
nl.tudelft.simulation.dsol.swing.introspection.sortable.SortingHeaderCell.instanceCounter should be package protected | MALICIOUS_CODE | MS_PKGPROTECT | 39 | Medium |
Write to static field nl.tudelft.simulation.dsol.swing.introspection.sortable.SortingHeaderCell.instanceCounter from instance method new nl.tudelft.simulation.dsol.swing.introspection.sortable.SortingHeaderCell(int) | STYLE | ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD | 56 | Medium |
nl.tudelft.simulation.dsol.swing.introspection.sortable.SortingTableModel
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.introspection.sortable.SortingTableModel(TableModel) may expose internal representation by storing an externally mutable object into SortingTableModel.source | MALICIOUS_CODE | EI_EXPOSE_REP2 | 56 | Medium |
nl.tudelft.simulation.dsol.swing.statistics.StatisticsTable
Bug | Category | Details | Line | Priority |
---|---|---|---|---|
new nl.tudelft.simulation.dsol.swing.statistics.StatisticsTable(StatisticsTableModel) may expose internal representation by storing an externally mutable object into StatisticsTable.table | MALICIOUS_CODE | EI_EXPOSE_REP2 | 37 | Medium |