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