SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.7.1

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
126 81 0 0

Files

Class Bugs
org.opentrafficsim.draw.core.BoundsPaintScale 2
org.opentrafficsim.draw.core.TextProperties 1
org.opentrafficsim.draw.graphs.AbstractContourPlot 3
org.opentrafficsim.draw.graphs.AbstractGraphSpace 1
org.opentrafficsim.draw.graphs.AbstractPlot 5
org.opentrafficsim.draw.graphs.AbstractSamplerPlot 1
org.opentrafficsim.draw.graphs.AbstractSpaceTimePlot 1
org.opentrafficsim.draw.graphs.ContourDataSource 12
org.opentrafficsim.draw.graphs.FundamentalDiagram 6
org.opentrafficsim.draw.graphs.FundamentalDiagram$AbstractSpaceSamplerFdSource 2
org.opentrafficsim.draw.graphs.FundamentalDiagram$MultiFdSource 1
org.opentrafficsim.draw.graphs.GraphCrossSection 1
org.opentrafficsim.draw.graphs.GraphPath 3
org.opentrafficsim.draw.graphs.GraphPath$Section 5
org.opentrafficsim.draw.graphs.GraphUpdater 1
org.opentrafficsim.draw.graphs.TrajectoryPlot 2
org.opentrafficsim.draw.graphs.TrajectoryPlot$OffsetTrajectory 1
org.opentrafficsim.draw.graphs.XyInterpolatedBlockRenderer 1
org.opentrafficsim.draw.graphs.XyInterpolatedBlockRenderer$1$1 1
org.opentrafficsim.draw.gtu.DefaultCarAnimation 1
org.opentrafficsim.draw.gtu.DefaultCarAnimation$Text 4
org.opentrafficsim.draw.lane.LaneStructureLocatable 4
org.opentrafficsim.draw.network.LinkAnimation$Text 2
org.opentrafficsim.draw.network.NodeAnimation$ElevatedNode 3
org.opentrafficsim.draw.network.NodeAnimation$Text 2
org.opentrafficsim.draw.road.BusStopAnimation$Text 2
org.opentrafficsim.draw.road.DetectorAnimation 1
org.opentrafficsim.draw.road.DetectorAnimation$Text 2
org.opentrafficsim.draw.road.GtuGeneratorPositionAnimation$Queue 2
org.opentrafficsim.draw.road.LaneAnimation 1
org.opentrafficsim.draw.road.LaneAnimation$Text 2
org.opentrafficsim.draw.road.StripeAnimation 1
org.opentrafficsim.draw.road.TrafficLightAnimation 1
org.opentrafficsim.draw.road.TrafficLightAnimation$Text 2
org.opentrafficsim.draw.road.TrafficLightDetectorAnimation 1

org.opentrafficsim.draw.core.BoundsPaintScale

Bug Category Details Line Priority
org.opentrafficsim.draw.core.BoundsPaintScale.GREEN_RED is a mutable array MALICIOUS_CODE MS_MUTABLE_ARRAY 25 High
org.opentrafficsim.draw.core.BoundsPaintScale.GREEN_RED_DARK is a mutable array MALICIOUS_CODE MS_MUTABLE_ARRAY 29 High

org.opentrafficsim.draw.core.TextProperties

Bug Category Details Line Priority
org.opentrafficsim.draw.core.TextProperties.getTextAttributes() may expose internal representation by returning TextProperties.textAttributes MALICIOUS_CODE EI_EXPOSE_REP 106 Medium

org.opentrafficsim.draw.graphs.AbstractContourPlot

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.AbstractContourPlot.getBlockRenderer() may expose internal representation by returning AbstractContourPlot.blockRenderer MALICIOUS_CODE EI_EXPOSE_REP 348 Medium
org.opentrafficsim.draw.graphs.AbstractContourPlot.getDataPool() may expose internal representation by returning AbstractContourPlot.dataPool MALICIOUS_CODE EI_EXPOSE_REP 200 Medium
new org.opentrafficsim.draw.graphs.AbstractContourPlot(String, OtsSimulatorInterface, ContourDataSource, BoundsPaintScale, Number, String, String) may expose internal representation by storing an externally mutable object into AbstractContourPlot.dataPool MALICIOUS_CODE EI_EXPOSE_REP2 71 Medium

org.opentrafficsim.draw.graphs.AbstractGraphSpace

Bug Category Details Line Priority
new org.opentrafficsim.draw.graphs.AbstractGraphSpace(List) may expose internal representation by storing an externally mutable object into AbstractGraphSpace.seriesNames MALICIOUS_CODE EI_EXPOSE_REP2 29 Medium

org.opentrafficsim.draw.graphs.AbstractPlot

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.AbstractPlot.getChart() may expose internal representation by returning AbstractPlot.chart MALICIOUS_CODE EI_EXPOSE_REP 237 Medium
org.opentrafficsim.draw.graphs.AbstractPlot.getUpdateTime() may expose internal representation by returning AbstractPlot.updateTime MALICIOUS_CODE EI_EXPOSE_REP 292 Medium
new org.opentrafficsim.draw.graphs.AbstractPlot(OtsSimulatorInterface, String, Duration, Duration) may expose internal representation by storing an externally mutable object into AbstractPlot.delay MALICIOUS_CODE EI_EXPOSE_REP2 107 Medium
new org.opentrafficsim.draw.graphs.AbstractPlot(OtsSimulatorInterface, String, Duration, Duration) may expose internal representation by storing an externally mutable object into AbstractPlot.updateInterval MALICIOUS_CODE EI_EXPOSE_REP2 106 Medium
org.opentrafficsim.draw.graphs.AbstractPlot.setUpdateInterval(Duration) may expose internal representation by storing an externally mutable object into AbstractPlot.updateInterval MALICIOUS_CODE EI_EXPOSE_REP2 281 Medium

org.opentrafficsim.draw.graphs.AbstractSamplerPlot

Bug Category Details Line Priority
new org.opentrafficsim.draw.graphs.AbstractSamplerPlot(String, Duration, OtsSimulatorInterface, SamplerData, GraphPath, Duration) may expose internal representation by storing an externally mutable object into AbstractSamplerPlot.samplerData MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium

org.opentrafficsim.draw.graphs.AbstractSpaceTimePlot

Bug Category Details Line Priority
new org.opentrafficsim.draw.graphs.AbstractSpaceTimePlot(String, Duration, OtsSimulatorInterface, Duration, Time) may expose internal representation by storing an externally mutable object into AbstractSpaceTimePlot.initialEnd MALICIOUS_CODE EI_EXPOSE_REP2 50 Medium

org.opentrafficsim.draw.graphs.ContourDataSource

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.ContourDataSource.getSamplerData() may expose internal representation by returning ContourDataSource.samplerData MALICIOUS_CODE EI_EXPOSE_REP 246 Medium
new org.opentrafficsim.draw.graphs.ContourDataSource(SamplerData, Duration, GraphPath, double[], int, double[], int, Time, Time) may expose internal representation by storing an externally mutable object into ContourDataSource.delay MALICIOUS_CODE EI_EXPOSE_REP2 223 Medium
new org.opentrafficsim.draw.graphs.ContourDataSource(SamplerData, Duration, GraphPath, double[], int, double[], int, Time, Time) may expose internal representation by storing an externally mutable object into ContourDataSource.samplerData MALICIOUS_CODE EI_EXPOSE_REP2 221 Medium
Inconsistent synchronization of org.opentrafficsim.draw.graphs.ContourDataSource.redo; locked 75% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 792 Medium
Inconsistent synchronization of org.opentrafficsim.draw.graphs.ContourDataSource.smooth; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 441 Medium
Inconsistent synchronization of org.opentrafficsim.draw.graphs.ContourDataSource.toTime; locked 83% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 509 Medium
org.opentrafficsim.draw.graphs.ContourDataSource.DEFAULT_SPACE_GRANULARITIES should be package protected MALICIOUS_CODE MS_PKGPROTECT 55 Medium
org.opentrafficsim.draw.graphs.ContourDataSource.DEFAULT_TIME_GRANULARITIES should be package protected MALICIOUS_CODE MS_PKGPROTECT 61 Medium
Method org.opentrafficsim.draw.graphs.ContourDataSource.setStatusLabel(String) seems to be useless STYLE UC_USELESS_VOID_METHOD 895 Medium
org.opentrafficsim.draw.graphs.ContourDataSource.getGranularity(ContourDataSource$Dimension) is unsynchronized, org.opentrafficsim.draw.graphs.ContourDataSource.setGranularity(ContourDataSource$Dimension, double) is synchronized MT_CORRECTNESS UG_SYNC_SET_UNSYNC_GET 362 Medium
org.opentrafficsim.draw.graphs.ContourDataSource.update(Time) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 769 Medium
org.opentrafficsim.draw.graphs.ContourDataSource.update(Time) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 786 Medium

org.opentrafficsim.draw.graphs.FundamentalDiagram

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.FundamentalDiagram.getLaneVisible() may expose internal representation by returning FundamentalDiagram.laneVisible MALICIOUS_CODE EI_EXPOSE_REP 1428 Medium
org.opentrafficsim.draw.graphs.FundamentalDiagram.getLegend() may expose internal representation by returning FundamentalDiagram.legend MALICIOUS_CODE EI_EXPOSE_REP 1419 Medium
org.opentrafficsim.draw.graphs.FundamentalDiagram.getSource() may expose internal representation by returning FundamentalDiagram.source MALICIOUS_CODE EI_EXPOSE_REP 1410 Medium
new org.opentrafficsim.draw.graphs.FundamentalDiagram(String, FundamentalDiagram$Quantity, FundamentalDiagram$Quantity, OtsSimulatorInterface, FundamentalDiagram$FdSource, FundamentalDiagram$FdLine) may expose internal representation by storing an externally mutable object into FundamentalDiagram.source MALICIOUS_CODE EI_EXPOSE_REP2 113 Medium
org.opentrafficsim.draw.graphs.FundamentalDiagram.DEFAULT_PERIODS should be package protected MALICIOUS_CODE MS_PKGPROTECT 56 Medium
org.opentrafficsim.draw.graphs.FundamentalDiagram.DEFAULT_UPDATE_FREQUENCIES should be package protected MALICIOUS_CODE MS_PKGPROTECT 59 Medium

org.opentrafficsim.draw.graphs.FundamentalDiagram$AbstractSpaceSamplerFdSource

Bug Category Details Line Priority
Inconsistent synchronization of org.opentrafficsim.draw.graphs.FundamentalDiagram$AbstractSpaceSamplerFdSource.firstMeasurement; locked 75% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 1147 Medium
Inconsistent synchronization of org.opentrafficsim.draw.graphs.FundamentalDiagram$AbstractSpaceSamplerFdSource.secondMeasurement; locked 71% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 1147 Medium

org.opentrafficsim.draw.graphs.FundamentalDiagram$MultiFdSource

Bug Category Details Line Priority
Possible null pointer dereference of sources in new org.opentrafficsim.draw.graphs.FundamentalDiagram$MultiFdSource(Map) CORRECTNESS NP_NULL_ON_SOME_PATH 1217 Medium

org.opentrafficsim.draw.graphs.GraphCrossSection

Bug Category Details Line Priority
new org.opentrafficsim.draw.graphs.GraphCrossSection(List, GraphPath$Section, List) may expose internal representation by storing an externally mutable object into GraphCrossSection.positions MALICIOUS_CODE EI_EXPOSE_REP2 69 Medium

org.opentrafficsim.draw.graphs.GraphPath

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.GraphPath.getSpeedLimit() may expose internal representation by returning GraphPath.speedLimit MALICIOUS_CODE EI_EXPOSE_REP 116 Medium
org.opentrafficsim.draw.graphs.GraphPath.getTotalLength() may expose internal representation by returning GraphPath.totalLength MALICIOUS_CODE EI_EXPOSE_REP 107 Medium
new org.opentrafficsim.draw.graphs.GraphPath(List, List) may expose internal representation by storing an externally mutable object into GraphPath.sections MALICIOUS_CODE EI_EXPOSE_REP2 73 Medium

org.opentrafficsim.draw.graphs.GraphPath$Section

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.GraphPath$Section.getLength() may expose internal representation by returning GraphPath$Section.length MALICIOUS_CODE EI_EXPOSE_REP 262 Medium
org.opentrafficsim.draw.graphs.GraphPath$Section.getSpeedLimit() may expose internal representation by returning GraphPath$Section.speedLimit MALICIOUS_CODE EI_EXPOSE_REP 271 Medium
new org.opentrafficsim.draw.graphs.GraphPath$Section(Length, Speed, List) may expose internal representation by storing an externally mutable object into GraphPath$Section.length MALICIOUS_CODE EI_EXPOSE_REP2 251 Medium
new org.opentrafficsim.draw.graphs.GraphPath$Section(Length, Speed, List) may expose internal representation by storing an externally mutable object into GraphPath$Section.objects MALICIOUS_CODE EI_EXPOSE_REP2 253 Medium
new org.opentrafficsim.draw.graphs.GraphPath$Section(Length, Speed, List) may expose internal representation by storing an externally mutable object into GraphPath$Section.speedLimit MALICIOUS_CODE EI_EXPOSE_REP2 252 Medium

org.opentrafficsim.draw.graphs.GraphUpdater

Bug Category Details Line Priority
Exceptional return value of java.util.concurrent.BlockingQueue.offer(Object) ignored in org.opentrafficsim.draw.graphs.GraphUpdater.offer(Object) BAD_PRACTICE RV_RETURN_VALUE_IGNORED_BAD_PRACTICE 68 Medium

org.opentrafficsim.draw.graphs.TrajectoryPlot

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.TrajectoryPlot.getLaneVisible() may expose internal representation by returning TrajectoryPlot.laneVisible MALICIOUS_CODE EI_EXPOSE_REP 597 Medium
org.opentrafficsim.draw.graphs.TrajectoryPlot.getLegend() may expose internal representation by returning TrajectoryPlot.legend MALICIOUS_CODE EI_EXPOSE_REP 588 Medium

org.opentrafficsim.draw.graphs.TrajectoryPlot$OffsetTrajectory

Bug Category Details Line Priority
Should org.opentrafficsim.draw.graphs.TrajectoryPlot$OffsetTrajectory be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 473-568 Medium

org.opentrafficsim.draw.graphs.XyInterpolatedBlockRenderer

Bug Category Details Line Priority
org.opentrafficsim.draw.graphs.XyInterpolatedBlockRenderer doesn't override org.jfree.chart.renderer.xy.XYBlockRenderer.equals(Object) STYLE EQ_DOESNT_OVERRIDE_EQUALS 1 Medium

org.opentrafficsim.draw.graphs.XyInterpolatedBlockRenderer$1$1

Bug Category Details Line Priority
Integral division result cast to double or float in org.opentrafficsim.draw.graphs.XyInterpolatedBlockRenderer$1$1.getRaster(int, int, int, int) STYLE ICAST_IDIV_CAST_TO_DOUBLE 182 Medium

org.opentrafficsim.draw.gtu.DefaultCarAnimation

Bug Category Details Line Priority
org.opentrafficsim.core.animation.gtu.colorer.IdGtuColorer stored into non-transient field DefaultCarAnimation.gtuColorer BAD_PRACTICE SE_BAD_FIELD_STORE 105 High

org.opentrafficsim.draw.gtu.DefaultCarAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.gtu.DefaultCarAnimation$Text(DefaultCarAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into DefaultCarAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 298 Medium
new org.opentrafficsim.draw.gtu.DefaultCarAnimation$Text(DefaultCarAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface, TextAnimation$ContrastToBackground) may expose internal representation by storing an externally mutable object into DefaultCarAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 318 Medium
Potentially ambiguous invocation of either an outer or inherited method org.opentrafficsim.draw.core.TextAnimation.destroy(Contextualized) in org.opentrafficsim.draw.gtu.DefaultCarAnimation$Text.paint(Graphics2D, ImageObserver) STYLE IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD 334 High
Should org.opentrafficsim.draw.gtu.DefaultCarAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 276-367 Medium

org.opentrafficsim.draw.lane.LaneStructureLocatable

Bug Category Details Line Priority
org.opentrafficsim.draw.lane.LaneStructureLocatable.getGtu() may expose internal representation by returning LaneStructureLocatable.gtu MALICIOUS_CODE EI_EXPOSE_REP 85 Medium
org.opentrafficsim.draw.lane.LaneStructureLocatable.getRollingLaneStructure() may expose internal representation by returning LaneStructureLocatable.rollingLaneStructure MALICIOUS_CODE EI_EXPOSE_REP 77 Medium
new org.opentrafficsim.draw.lane.LaneStructureLocatable(RollingLaneStructure, Gtu) may expose internal representation by storing an externally mutable object into LaneStructureLocatable.gtu MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium
new org.opentrafficsim.draw.lane.LaneStructureLocatable(RollingLaneStructure, Gtu) may expose internal representation by storing an externally mutable object into LaneStructureLocatable.rollingLaneStructure MALICIOUS_CODE EI_EXPOSE_REP2 38 Medium

org.opentrafficsim.draw.network.LinkAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.network.LinkAnimation$Text(LinkAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface, TextAnimation$ScaleDependentRendering) may expose internal representation by storing an externally mutable object into LinkAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 154 Medium
Should org.opentrafficsim.draw.network.LinkAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 134-177 Medium

org.opentrafficsim.draw.network.NodeAnimation$ElevatedNode

Bug Category Details Line Priority
org.opentrafficsim.draw.network.NodeAnimation$ElevatedNode.getNode() may expose internal representation by returning NodeAnimation$ElevatedNode.node MALICIOUS_CODE EI_EXPOSE_REP 129 Medium
org.opentrafficsim.draw.network.NodeAnimation$ElevatedNode.getParentIntrospectionObject() may expose internal representation by returning NodeAnimation$ElevatedNode.node MALICIOUS_CODE EI_EXPOSE_REP 143 Medium
new org.opentrafficsim.draw.network.NodeAnimation$ElevatedNode(Node) may expose internal representation by storing an externally mutable object into NodeAnimation$ElevatedNode.node MALICIOUS_CODE EI_EXPOSE_REP2 111 Medium

org.opentrafficsim.draw.network.NodeAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.network.NodeAnimation$Text(NodeAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface, TextAnimation$ScaleDependentRendering) may expose internal representation by storing an externally mutable object into NodeAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 180 Medium
Should org.opentrafficsim.draw.network.NodeAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 180-190 Medium

org.opentrafficsim.draw.road.BusStopAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.road.BusStopAnimation$Text(BusStopAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into BusStopAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 106 Medium
Should org.opentrafficsim.draw.road.BusStopAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 106-114 Medium

org.opentrafficsim.draw.road.DetectorAnimation

Bug Category Details Line Priority
org.opentrafficsim.draw.road.DetectorAnimation.getText() may expose internal representation by returning DetectorAnimation.text MALICIOUS_CODE EI_EXPOSE_REP 66 Medium

org.opentrafficsim.draw.road.DetectorAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.road.DetectorAnimation$Text(DetectorAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into DetectorAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 122 Medium
Should org.opentrafficsim.draw.road.DetectorAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 122-130 Medium

org.opentrafficsim.draw.road.GtuGeneratorPositionAnimation$Queue

Bug Category Details Line Priority
new org.opentrafficsim.draw.road.GtuGeneratorPositionAnimation$Queue(GtuGeneratorPositionAnimation, Locatable, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into GtuGeneratorPositionAnimation$Queue.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 111 Medium
Should org.opentrafficsim.draw.road.GtuGeneratorPositionAnimation$Queue be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 98-137 Medium

org.opentrafficsim.draw.road.LaneAnimation

Bug Category Details Line Priority
org.opentrafficsim.draw.road.LaneAnimation.getText() may expose internal representation by returning LaneAnimation.text MALICIOUS_CODE EI_EXPOSE_REP 68 Medium

org.opentrafficsim.draw.road.LaneAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.road.LaneAnimation$Text(LaneAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into LaneAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 201 Medium
Should org.opentrafficsim.draw.road.LaneAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 182-224 Medium

org.opentrafficsim.draw.road.StripeAnimation

Bug Category Details Line Priority
Using floating-point loop counters can lead to unexpected behavior. CORRECTNESS FL_FLOATS_AS_LOOP_COUNTERS 79 Medium

org.opentrafficsim.draw.road.TrafficLightAnimation

Bug Category Details Line Priority
org.opentrafficsim.draw.road.TrafficLightAnimation.getText() may expose internal representation by returning TrafficLightAnimation.text MALICIOUS_CODE EI_EXPOSE_REP 62 Medium

org.opentrafficsim.draw.road.TrafficLightAnimation$Text

Bug Category Details Line Priority
new org.opentrafficsim.draw.road.TrafficLightAnimation$Text(TrafficLightAnimation, Locatable, String, float, float, TextAlignment, Color, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into TrafficLightAnimation$Text.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 142 Medium
Should org.opentrafficsim.draw.road.TrafficLightAnimation$Text be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 142-150 Medium

org.opentrafficsim.draw.road.TrafficLightDetectorAnimation

Bug Category Details Line Priority
new org.opentrafficsim.draw.road.TrafficLightDetectorAnimation(TrafficLightDetector, OtsSimulatorInterface) may expose internal representation by storing an externally mutable object into TrafficLightDetectorAnimation.detector MALICIOUS_CODE EI_EXPOSE_REP2 53 Medium