SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.9.1

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
176 200 0 0

Files

Class Bugs
org.opentrafficsim.editor.Actions 20
org.opentrafficsim.editor.AttributesTableModel 3
org.opentrafficsim.editor.ChildNodeFinder 2
org.opentrafficsim.editor.Dialogs 1
org.opentrafficsim.editor.EvalWrapper 4
org.opentrafficsim.editor.Navigation 5
org.opentrafficsim.editor.NodeActions 2
org.opentrafficsim.editor.OtsEditor 18
org.opentrafficsim.editor.ScenarioWrapper 2
org.opentrafficsim.editor.Schema 5
org.opentrafficsim.editor.Undo 7
org.opentrafficsim.editor.Undo$Action 1
org.opentrafficsim.editor.XiIncludeNode 2
org.opentrafficsim.editor.XsdOption 4
org.opentrafficsim.editor.XsdTreeNode 28
org.opentrafficsim.editor.XsdTreeNodeRoot 1
org.opentrafficsim.editor.XsdTreeNodeUtil$Occurs 1
org.opentrafficsim.editor.XsdTreeTableModel 1
org.opentrafficsim.editor.decoration.AutomaticLinkId 1
org.opentrafficsim.editor.decoration.LayoutCustomizer 2
org.opentrafficsim.editor.decoration.validation.KeyValidator 1
org.opentrafficsim.editor.decoration.validation.KeyrefValidator 3
org.opentrafficsim.editor.decoration.validation.ParentValidator 1
org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator 2
org.opentrafficsim.editor.decoration.validation.TrafficLightValidator 1
org.opentrafficsim.editor.decoration.validation.ValueValidator 1
org.opentrafficsim.editor.decoration.validation.XPathValidator 3
org.opentrafficsim.editor.extensions.DefinitionsSaver 1
org.opentrafficsim.editor.extensions.OdEditor 1
org.opentrafficsim.editor.extensions.RoadLayoutEditor 1
org.opentrafficsim.editor.extensions.RouteEditor 1
org.opentrafficsim.editor.extensions.TrafCodEditor 1
org.opentrafficsim.editor.extensions.map.ChangeListener 2
org.opentrafficsim.editor.extensions.map.EditorMap 3
org.opentrafficsim.editor.extensions.map.FlattenerListener 1
org.opentrafficsim.editor.extensions.map.MapCrossSectionData 1
org.opentrafficsim.editor.extensions.map.MapData 4
org.opentrafficsim.editor.extensions.map.MapLaneBasedObjectData 1
org.opentrafficsim.editor.extensions.map.MapLinkData 2
org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset 2
org.opentrafficsim.editor.extensions.map.MapLinkData$ShapeListener 1
org.opentrafficsim.editor.extensions.map.MapPriorityData 1
org.opentrafficsim.editor.extensions.map.MapStripeData 9
org.opentrafficsim.editor.extensions.map.MapVisualizationPanel 1
org.opentrafficsim.editor.extensions.map.RoadLayoutListener$1 1
org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe 3
org.opentrafficsim.editor.extensions.map.edit.DraggableAnnotation 1
org.opentrafficsim.editor.extensions.map.edit.DraggableAnnotation$Draggable 2
org.opentrafficsim.editor.extensions.map.edit.MapAnnotation 1
org.opentrafficsim.editor.extensions.map.edit.MapInputListener 4
org.opentrafficsim.editor.extensions.map.edit.SelectionAnnotation$ZAdjustedMapData 2
org.opentrafficsim.editor.listeners.AttributesListSelectionListener 2
org.opentrafficsim.editor.listeners.AttributesMouseListener 2
org.opentrafficsim.editor.listeners.ChangesListener 2
org.opentrafficsim.editor.listeners.FieldListener 3
org.opentrafficsim.editor.listeners.PopupValueSelectedListener 2
org.opentrafficsim.editor.listeners.ScenarioActionListener 4
org.opentrafficsim.editor.listeners.XsdTreeEditorListener 3
org.opentrafficsim.editor.listeners.XsdTreeKeyListener 2
org.opentrafficsim.editor.listeners.XsdTreeListener 4
org.opentrafficsim.editor.render.AttributeCellRenderer 1
org.opentrafficsim.editor.render.AttributesCellEditor 3
org.opentrafficsim.editor.render.StringCellRenderer 1
org.opentrafficsim.editor.render.XsdTreeCellRenderer 2

org.opentrafficsim.editor.Actions

Bug Category Details Line Priority
org.opentrafficsim.editor.Actions.addNode() may expose internal representation by returning Actions.addNodeAction MALICIOUS_CODE EI_EXPOSE_REP 265 Medium
org.opentrafficsim.editor.Actions.collapseAll() may expose internal representation by returning Actions.collapseAllAction MALICIOUS_CODE EI_EXPOSE_REP 487 Medium
org.opentrafficsim.editor.Actions.copyNode() may expose internal representation by returning Actions.copyNodeAction MALICIOUS_CODE EI_EXPOSE_REP 349 Medium
org.opentrafficsim.editor.Actions.cutNode() may expose internal representation by returning Actions.cutNodeAction MALICIOUS_CODE EI_EXPOSE_REP 376 Medium
org.opentrafficsim.editor.Actions.deleteNode() may expose internal representation by returning Actions.deleteNodeAction MALICIOUS_CODE EI_EXPOSE_REP 319 Medium
org.opentrafficsim.editor.Actions.duplicateNode() may expose internal representation by returning Actions.duplicateNodeAction MALICIOUS_CODE EI_EXPOSE_REP 292 Medium
org.opentrafficsim.editor.Actions.expandOrCollapseNode() may expose internal representation by returning Actions.expandOrCollapseNodeAction MALICIOUS_CODE EI_EXPOSE_REP 509 Medium
org.opentrafficsim.editor.Actions.getNodeActions() may expose internal representation by returning Actions.nodeActions MALICIOUS_CODE EI_EXPOSE_REP 71 Medium
org.opentrafficsim.editor.Actions.insertNode() may expose internal representation by returning Actions.insertNodeAction MALICIOUS_CODE EI_EXPOSE_REP 403 Medium
org.opentrafficsim.editor.Actions.moveNodeDown() may expose internal representation by returning Actions.moveNodeDownAction MALICIOUS_CODE EI_EXPOSE_REP 563 Medium
org.opentrafficsim.editor.Actions.moveNodeUp() may expose internal representation by returning Actions.moveNodeUpAction MALICIOUS_CODE EI_EXPOSE_REP 536 Medium
org.opentrafficsim.editor.Actions.pasteNode() may expose internal representation by returning Actions.pasteNodeAction MALICIOUS_CODE EI_EXPOSE_REP 431 Medium
org.opentrafficsim.editor.Actions.revolveNode() may expose internal representation by returning Actions.revolveNodeAction MALICIOUS_CODE EI_EXPOSE_REP 459 Medium
org.opentrafficsim.editor.Actions.showAttributeDescription() may expose internal representation by returning Actions.showAttributeDescriptionAction MALICIOUS_CODE EI_EXPOSE_REP 213 Medium
org.opentrafficsim.editor.Actions.showAttributeInvalid() may expose internal representation by returning Actions.showAttributeInvalidAction MALICIOUS_CODE EI_EXPOSE_REP 239 Medium
org.opentrafficsim.editor.Actions.showTreeNodeDescription() may expose internal representation by returning Actions.showTreeNodeDescriptionAction MALICIOUS_CODE EI_EXPOSE_REP 160 Medium
org.opentrafficsim.editor.Actions.showTreeNodeInvalid() may expose internal representation by returning Actions.showTreeNodeInvalidAction MALICIOUS_CODE EI_EXPOSE_REP 184 Medium
new org.opentrafficsim.editor.Actions(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into Actions.attributesTable MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium
new org.opentrafficsim.editor.Actions(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into Actions.editor MALICIOUS_CODE EI_EXPOSE_REP2 51 Medium
org.opentrafficsim.editor.Actions.setTreeTable(JTreeTable) may expose internal representation by storing an externally mutable object into Actions.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 61 Medium

org.opentrafficsim.editor.AttributesTableModel

Bug Category Details Line Priority
org.opentrafficsim.editor.AttributesTableModel.getNode() may expose internal representation by returning AttributesTableModel.node MALICIOUS_CODE EI_EXPOSE_REP 155 Medium
new org.opentrafficsim.editor.AttributesTableModel(XsdTreeNode, JTreeTable) may expose internal representation by storing an externally mutable object into AttributesTableModel.node MALICIOUS_CODE EI_EXPOSE_REP2 64 Medium
new org.opentrafficsim.editor.AttributesTableModel(XsdTreeNode, JTreeTable) may expose internal representation by storing an externally mutable object into AttributesTableModel.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 65 Medium

org.opentrafficsim.editor.ChildNodeFinder

Bug Category Details Line Priority
org.opentrafficsim.editor.ChildNodeFinder.get() may expose internal representation by returning ChildNodeFinder.child MALICIOUS_CODE EI_EXPOSE_REP 65 Medium
new org.opentrafficsim.editor.ChildNodeFinder(XsdTreeNode) may expose internal representation by storing an externally mutable object into ChildNodeFinder.parent MALICIOUS_CODE EI_EXPOSE_REP2 28 Medium

org.opentrafficsim.editor.Dialogs

Bug Category Details Line Priority
new org.opentrafficsim.editor.Dialogs(OtsEditor) may expose internal representation by storing an externally mutable object into Dialogs.editor MALICIOUS_CODE EI_EXPOSE_REP2 42 Medium

org.opentrafficsim.editor.EvalWrapper

Bug Category Details Line Priority
org.opentrafficsim.editor.EvalWrapper.getEval(ScenarioWrapper) may expose internal representation by returning EvalWrapper.eval MALICIOUS_CODE EI_EXPOSE_REP 118 Medium
org.opentrafficsim.editor.EvalWrapper.getLastValidEval() may expose internal representation by returning EvalWrapper.eval MALICIOUS_CODE EI_EXPOSE_REP 131 Medium
new org.opentrafficsim.editor.EvalWrapper(OtsEditor) may expose internal representation by storing an externally mutable object into EvalWrapper.editor MALICIOUS_CODE EI_EXPOSE_REP2 75 Medium
Exception is caught when Exception is not thrown in org.opentrafficsim.editor.EvalWrapper.wrap(XsdTreeNode) STYLE REC_CATCH_EXCEPTION 330 Medium

org.opentrafficsim.editor.Navigation

Bug Category Details Line Priority
org.opentrafficsim.editor.Navigation.getGoBackAction() may expose internal representation by returning Navigation.goBackAction MALICIOUS_CODE EI_EXPOSE_REP 97 Medium
org.opentrafficsim.editor.Navigation.getGotoCoupledNodeAction() may expose internal representation by returning Navigation.goToCoupledNodeAction MALICIOUS_CODE EI_EXPOSE_REP 132 Medium
new org.opentrafficsim.editor.Navigation(OtsEditor, int) may expose internal representation by storing an externally mutable object into Navigation.editor MALICIOUS_CODE EI_EXPOSE_REP2 49 Medium
org.opentrafficsim.editor.Navigation.setCoupledNode(XsdTreeNode, XsdTreeNode, String) may expose internal representation by storing an externally mutable object into Navigation.candidateBackNode MALICIOUS_CODE EI_EXPOSE_REP2 87 Medium
org.opentrafficsim.editor.Navigation.setCoupledNode(XsdTreeNode, XsdTreeNode, String) may expose internal representation by storing an externally mutable object into Navigation.coupledNode MALICIOUS_CODE EI_EXPOSE_REP2 86 Medium

org.opentrafficsim.editor.NodeActions

Bug Category Details Line Priority
new org.opentrafficsim.editor.NodeActions(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into NodeActions.editor MALICIOUS_CODE EI_EXPOSE_REP2 38 Medium
new org.opentrafficsim.editor.NodeActions(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into NodeActions.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium

org.opentrafficsim.editor.OtsEditor

Bug Category Details Line Priority
Shared primitive variable "dropdownIndent" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1236 Medium
Shared primitive variable "ignoreChanges" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1508 Medium
Shared primitive variable "cut" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1728 Medium
Shared primitive variable "mayPresentChoice" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1080 Medium
Shared primitive variable "unsavedChanges" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 787 Medium
Shared primitive variable "dropdownIndent" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1175 Medium
org.opentrafficsim.editor.OtsEditor.actions() may expose internal representation by returning OtsEditor.actions MALICIOUS_CODE EI_EXPOSE_REP 1761 Medium
org.opentrafficsim.editor.OtsEditor.getChoiceNode() may expose internal representation by returning OtsEditor.choiceNode MALICIOUS_CODE EI_EXPOSE_REP 1062 Medium
org.opentrafficsim.editor.OtsEditor.getClipboard() may expose internal representation by returning OtsEditor.clipboard MALICIOUS_CODE EI_EXPOSE_REP 1737 Medium
org.opentrafficsim.editor.OtsEditor.getEventListenerMap() may expose internal representation by returning OtsEditor.listenerMap MALICIOUS_CODE EI_EXPOSE_REP 1095 Medium
org.opentrafficsim.editor.OtsEditor.getUndo() may expose internal representation by returning OtsEditor.undo MALICIOUS_CODE EI_EXPOSE_REP 554 Medium
org.opentrafficsim.editor.OtsEditor.setChoiceNode(XsdTreeNode) may expose internal representation by storing an externally mutable object into OtsEditor.choiceNode MALICIOUS_CODE EI_EXPOSE_REP2 1071 Medium
org.opentrafficsim.editor.OtsEditor.setClipboard(XsdTreeNode, boolean) may expose internal representation by storing an externally mutable object into OtsEditor.clipboard MALICIOUS_CODE EI_EXPOSE_REP2 1727 Medium
org.opentrafficsim.editor.OtsEditor.setSchema(Document) may expose internal representation by storing an externally mutable object into OtsEditor.xsdDocument MALICIOUS_CODE EI_EXPOSE_REP2 808 Medium
org.opentrafficsim.editor.OtsEditor.checkAutosave() may fail to close stream BAD_PRACTICE OS_OPEN_STREAM 834 Medium
Exceptional return value of java.io.File.delete() ignored in org.opentrafficsim.editor.OtsEditor.checkAutosave() BAD_PRACTICE RV_RETURN_VALUE_IGNORED_BAD_PRACTICE 852 Medium
Exceptional return value of java.io.File.mkdir() ignored in org.opentrafficsim.editor.OtsEditor.checkAutosave() BAD_PRACTICE RV_RETURN_VALUE_IGNORED_BAD_PRACTICE 829 Medium
Exceptional return value of java.io.File.delete() ignored in org.opentrafficsim.editor.OtsEditor.runSingle() BAD_PRACTICE RV_RETURN_VALUE_IGNORED_BAD_PRACTICE 513 Medium

org.opentrafficsim.editor.ScenarioWrapper

Bug Category Details Line Priority
org.opentrafficsim.editor.ScenarioWrapper.scenarioNode() may expose internal representation by returning ScenarioWrapper.scenarioNode MALICIOUS_CODE EI_EXPOSE_REP 31 Medium
new org.opentrafficsim.editor.ScenarioWrapper(XsdTreeNode) may expose internal representation by storing an externally mutable object into ScenarioWrapper.scenarioNode MALICIOUS_CODE EI_EXPOSE_REP2 12 Medium

org.opentrafficsim.editor.Schema

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.Schema at new org.opentrafficsim.editor.Schema(Document) 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
Call to java.util.Optional<org.w3c.dom.Node>.equals(org.w3c.dom.Node) in org.opentrafficsim.editor.Schema.isType(Node, String) CORRECTNESS EC_UNRELATED_CLASS_AND_INTERFACE 972 High
org.opentrafficsim.editor.Schema.getRoot() may expose internal representation by returning Schema.root MALICIOUS_CODE EI_EXPOSE_REP 869 Medium
org.opentrafficsim.editor.Schema.checkKeyOrUniques(String, Map) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 563 Medium
org.opentrafficsim.editor.Schema.checkKeyrefs() makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 633 Medium

org.opentrafficsim.editor.Undo

Bug Category Details Line Priority
Shared primitive variable "cursor" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 151 Medium
Shared primitive variable "cursor" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 79 Medium
Shared primitive variable "ignoreChanges" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 77 Medium
Shared primitive variable "ignoreChanges" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 91 Medium
new org.opentrafficsim.editor.Undo(OtsEditor, AbstractButton, AbstractButton) may expose internal representation by storing an externally mutable object into Undo.editor MALICIOUS_CODE EI_EXPOSE_REP2 64 Medium
new org.opentrafficsim.editor.Undo(OtsEditor, AbstractButton, AbstractButton) may expose internal representation by storing an externally mutable object into Undo.redoItem MALICIOUS_CODE EI_EXPOSE_REP2 66 Medium
new org.opentrafficsim.editor.Undo(OtsEditor, AbstractButton, AbstractButton) may expose internal representation by storing an externally mutable object into Undo.undoItem MALICIOUS_CODE EI_EXPOSE_REP2 65 Medium

org.opentrafficsim.editor.Undo$Action

Bug Category Details Line Priority
Should org.opentrafficsim.editor.Undo$Action be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 505-512 Medium

org.opentrafficsim.editor.XiIncludeNode

Bug Category Details Line Priority
org.opentrafficsim.editor.XiIncludeNode.getFirstChild() may expose internal representation by returning XiIncludeNode.FILE_CHILD MALICIOUS_CODE EI_EXPOSE_REP 98 Medium
org.opentrafficsim.editor.XiIncludeNode.getLastChild() may expose internal representation by returning XiIncludeNode.FALLBACK_CHILD MALICIOUS_CODE EI_EXPOSE_REP 104 Medium

org.opentrafficsim.editor.XsdOption

Bug Category Details Line Priority
org.opentrafficsim.editor.XsdOption.choice() may expose internal representation by returning XsdOption.choice MALICIOUS_CODE EI_EXPOSE_REP 14 Medium
org.opentrafficsim.editor.XsdOption.optionNode() may expose internal representation by returning XsdOption.optionNode MALICIOUS_CODE EI_EXPOSE_REP 14 Medium
new org.opentrafficsim.editor.XsdOption(XsdTreeNode, XsdTreeNode, boolean) may expose internal representation by storing an externally mutable object into XsdOption.choice MALICIOUS_CODE EI_EXPOSE_REP2 14 Medium
new org.opentrafficsim.editor.XsdOption(XsdTreeNode, XsdTreeNode, boolean) may expose internal representation by storing an externally mutable object into XsdOption.optionNode MALICIOUS_CODE EI_EXPOSE_REP2 14 Medium

org.opentrafficsim.editor.XsdTreeNode

Bug Category Details Line Priority
Operation on the "active" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 1485 Medium
Operation on the "isIncluded" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 1454 Medium
Operation on the "maxOccurs" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 1480 Medium
Operation on the "minOccurs" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 1479 Medium
Operation on the "maxOccurs" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 545 Medium
Operation on the "minOccurs" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 544 Medium
Operation on the "active" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 1389 Medium
Operation on the "maxOccurs" shared variable in "XsdTreeNode" class is not atomic MT_CORRECTNESS AT_NONATOMIC_OPERATIONS_ON_SHARED_VARIABLE 383 Medium
Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1364 Medium
Shared primitive variable "isIncluded" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 754 Medium
Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 548 Medium
Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1887 Medium
Shared primitive variable "idIndex" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1219 Medium
Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 2802 Medium
Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1136 Medium
Shared primitive variable "active" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1186 Medium
Shared primitive variable "deactivated" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 1185 Medium
Shared primitive variable "maxOccurs" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 368 Medium
Shared primitive variable "minOccurs" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 367 Medium
Exception thrown in class org.opentrafficsim.editor.XsdTreeNode at new org.opentrafficsim.editor.XsdTreeNode(Schema) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 269 Medium
Exception thrown in class org.opentrafficsim.editor.XsdTreeNode at new org.opentrafficsim.editor.XsdTreeNode(XsdTreeNode, Node, ImmutableList) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 289 Medium
Exception thrown in class org.opentrafficsim.editor.XsdTreeNode at new org.opentrafficsim.editor.XsdTreeNode(XsdTreeNode, Node, ImmutableList, Node) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 332 Medium
org.opentrafficsim.editor.XsdTreeNode.getOption() may expose internal representation by returning XsdTreeNode.selected MALICIOUS_CODE EI_EXPOSE_REP 529 Medium
org.opentrafficsim.editor.XsdTreeNode.getParent() may expose internal representation by returning XsdTreeNode.parent MALICIOUS_CODE EI_EXPOSE_REP 795 Medium
Inconsistent synchronization of org.opentrafficsim.editor.XsdTreeNode.description; locked 42% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 1851 Medium
Return value of add() ignored, is this OK in org.opentrafficsim.editor.XsdTreeNode.assureChildren() STYLE RV_RETURN_VALUE_IGNORED_INFERRED 783 Medium
Return value of add() ignored, is this OK in org.opentrafficsim.editor.XsdTreeNode.loadChildren(XsdTreeNodeUtil$LoadingIndices, NodeList, boolean) STYLE RV_RETURN_VALUE_IGNORED_INFERRED 2675 Medium
org.opentrafficsim.editor.XsdTreeNode.loadXmlNodes(Node) concatenates strings using + in a loop PERFORMANCE SBSC_USE_STRINGBUFFER_CONCATENATION 2527 Medium

org.opentrafficsim.editor.XsdTreeNodeRoot

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.XsdTreeNodeRoot at new org.opentrafficsim.editor.XsdTreeNodeRoot(Schema, Supplier, Supplier) 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

org.opentrafficsim.editor.XsdTreeNodeUtil$Occurs

Bug Category Details Line Priority
Boxing/unboxing to parse a primitive org.opentrafficsim.editor.XsdTreeNodeUtil$Occurs.get(Node) PERFORMANCE DM_BOXED_PRIMITIVE_FOR_PARSING 510 High

org.opentrafficsim.editor.XsdTreeTableModel

Bug Category Details Line Priority
org.opentrafficsim.editor.XsdTreeTableModel.setTreeTable(JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeTableModel.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 71 Medium

org.opentrafficsim.editor.decoration.AutomaticLinkId

Bug Category Details Line Priority
org.opentrafficsim.editor.decoration.AutomaticLinkId.notifyAttributeChanged(XsdTreeNode, String) may expose internal representation by storing an externally mutable object into AutomaticLinkId.lastNode MALICIOUS_CODE EI_EXPOSE_REP2 66 Medium

org.opentrafficsim.editor.decoration.LayoutCustomizer

Bug Category Details Line Priority
new org.opentrafficsim.editor.decoration.LayoutCustomizer(OtsEditor) may expose internal representation by storing an externally mutable object into LayoutCustomizer.editor MALICIOUS_CODE EI_EXPOSE_REP2 37 Medium
Possible null pointer dereference of custom in org.opentrafficsim.editor.decoration.LayoutCustomizer.accept(XsdTreeNode) CORRECTNESS NP_NULL_ON_SOME_PATH 75 Medium

org.opentrafficsim.editor.decoration.validation.KeyValidator

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.decoration.validation.KeyValidator at new org.opentrafficsim.editor.decoration.validation.KeyValidator(Node, String, Supplier) 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

org.opentrafficsim.editor.decoration.validation.KeyrefValidator

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.decoration.validation.KeyrefValidator at new org.opentrafficsim.editor.decoration.validation.KeyrefValidator(Node, String, KeyValidator, Supplier) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 54 Medium
org.opentrafficsim.editor.decoration.validation.KeyrefValidator.getCouplings() may expose internal representation by returning KeyrefValidator.coupledNodes MALICIOUS_CODE EI_EXPOSE_REP 232 Medium
new org.opentrafficsim.editor.decoration.validation.KeyrefValidator(Node, String, KeyValidator, Supplier) may expose internal representation by storing an externally mutable object into KeyrefValidator.refer MALICIOUS_CODE EI_EXPOSE_REP2 61 Medium

org.opentrafficsim.editor.decoration.validation.ParentValidator

Bug Category Details Line Priority
Nullcheck of parent at line 178 of value previously dereferenced in org.opentrafficsim.editor.decoration.validation.ParentValidator.getContext(XsdTreeNode) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 178 Medium

org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator at new org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator(OtsEditor, String, RoadLayoutElementValidator$LayoutCoupling, RoadLayoutElementValidator$RoadLayoutElementAttribute) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 114 Medium
org.opentrafficsim.editor.decoration.validation.RoadLayoutElementValidator.getCouplings() may expose internal representation by returning RoadLayoutElementValidator.coupledNodes MALICIOUS_CODE EI_EXPOSE_REP 512 Medium

org.opentrafficsim.editor.decoration.validation.TrafficLightValidator

Bug Category Details Line Priority
org.opentrafficsim.editor.decoration.validation.TrafficLightValidator.getCouplings() may expose internal representation by returning TrafficLightValidator.coupledNodes MALICIOUS_CODE EI_EXPOSE_REP 192 Medium

org.opentrafficsim.editor.decoration.validation.ValueValidator

Bug Category Details Line Priority
Boxing/unboxing to parse a primitive org.opentrafficsim.editor.decoration.validation.ValueValidator.reportNativeTypeNonCompliance(String, String) PERFORMANCE DM_BOXED_PRIMITIVE_FOR_PARSING 457 High

org.opentrafficsim.editor.decoration.validation.XPathValidator

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.decoration.validation.XPathValidator at new org.opentrafficsim.editor.decoration.validation.XPathValidator(Node, String, Supplier) 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
org.opentrafficsim.editor.decoration.validation.XPathValidator.getSelectorTypeString() may expose internal representation by returning XPathValidator.selectors MALICIOUS_CODE EI_EXPOSE_REP 140 Medium
new org.opentrafficsim.editor.decoration.validation.XPathValidator(Node, String, Supplier) may expose internal representation by storing an externally mutable object into XPathValidator.keyNode MALICIOUS_CODE EI_EXPOSE_REP2 68 Medium

org.opentrafficsim.editor.extensions.DefinitionsSaver

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.DefinitionsSaver(OtsEditor) may expose internal representation by storing an externally mutable object into DefinitionsSaver.editor MALICIOUS_CODE EI_EXPOSE_REP2 35 Medium

org.opentrafficsim.editor.extensions.OdEditor

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.OdEditor(OtsEditor) may expose internal representation by storing an externally mutable object into OdEditor.editor MALICIOUS_CODE EI_EXPOSE_REP2 36 Medium

org.opentrafficsim.editor.extensions.RoadLayoutEditor

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.RoadLayoutEditor(OtsEditor) may expose internal representation by storing an externally mutable object into RoadLayoutEditor.editor MALICIOUS_CODE EI_EXPOSE_REP2 41 Medium

org.opentrafficsim.editor.extensions.RouteEditor

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.RouteEditor(OtsEditor) may expose internal representation by storing an externally mutable object into RouteEditor.editor MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium

org.opentrafficsim.editor.extensions.TrafCodEditor

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.TrafCodEditor(OtsEditor) may expose internal representation by storing an externally mutable object into TrafCodEditor.editor MALICIOUS_CODE EI_EXPOSE_REP2 36 Medium

org.opentrafficsim.editor.extensions.map.ChangeListener

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.ChangeListener.getNode() may expose internal representation by returning ChangeListener.node MALICIOUS_CODE EI_EXPOSE_REP 180 Medium
new org.opentrafficsim.editor.extensions.map.ChangeListener(XsdTreeNode, Supplier) may expose internal representation by storing an externally mutable object into ChangeListener.node MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium

org.opentrafficsim.editor.extensions.map.EditorMap

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.EditorMap.getPanel() may expose internal representation by returning EditorMap.visualizationPanel MALICIOUS_CODE EI_EXPOSE_REP 1003 Medium
org.opentrafficsim.editor.extensions.map.EditorMap.getSynchronizableStripes() may expose internal representation by returning EditorMap.synStripes MALICIOUS_CODE EI_EXPOSE_REP 1029 Medium
Possible null pointer dereference of EditorMap.networkFlattenerListener in org.opentrafficsim.editor.extensions.map.EditorMap.removeNetworkFlattener() CORRECTNESS NP_NULL_ON_SOME_PATH 949 Medium

org.opentrafficsim.editor.extensions.map.FlattenerListener

Bug Category Details Line Priority
Boxing/unboxing to parse a primitive org.opentrafficsim.editor.extensions.map.FlattenerListener.calculateData() PERFORMANCE DM_BOXED_PRIMITIVE_FOR_PARSING 45 High

org.opentrafficsim.editor.extensions.map.MapCrossSectionData

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.map.MapCrossSectionData(XsdTreeNode, CrossSectionGeometry) may expose internal representation by storing an externally mutable object into MapCrossSectionData.linkNode MALICIOUS_CODE EI_EXPOSE_REP2 35 Medium

org.opentrafficsim.editor.extensions.map.MapData

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.MapData.getNode() may expose internal representation by returning MapData.node MALICIOUS_CODE EI_EXPOSE_REP 64 Medium
new org.opentrafficsim.editor.extensions.map.MapData(EditorMap, XsdTreeNode, OtsEditor) may expose internal representation by storing an externally mutable object into MapData.editor MALICIOUS_CODE EI_EXPOSE_REP2 54 Medium
new org.opentrafficsim.editor.extensions.map.MapData(EditorMap, XsdTreeNode, OtsEditor) may expose internal representation by storing an externally mutable object into MapData.map MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium
new org.opentrafficsim.editor.extensions.map.MapData(EditorMap, XsdTreeNode, OtsEditor) may expose internal representation by storing an externally mutable object into MapData.node MALICIOUS_CODE EI_EXPOSE_REP2 53 Medium

org.opentrafficsim.editor.extensions.map.MapLaneBasedObjectData

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.MapLaneBasedObjectData.getLaneWidth() may expose internal representation by returning MapLaneBasedObjectData.laneWidth MALICIOUS_CODE EI_EXPOSE_REP 133 Medium

org.opentrafficsim.editor.extensions.map.MapLinkData

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.MapLinkData.getEventListenerMap() may expose internal representation by returning MapLinkData.eventListenerMap MALICIOUS_CODE EI_EXPOSE_REP 962 Medium
Useless object stored in variable laneOverrides of method org.opentrafficsim.editor.extensions.map.MapLinkData.buildLayout() STYLE UC_USELESS_OBJECT 736 Medium

org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset(MapLinkData) may expose internal representation by storing an externally mutable object into MapLinkData$MiddleOffset.this$0 MALICIOUS_CODE EI_EXPOSE_REP2 1065 Medium
Should org.opentrafficsim.editor.extensions.map.MapLinkData$MiddleOffset be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 1050-1105 Medium

org.opentrafficsim.editor.extensions.map.MapLinkData$ShapeListener

Bug Category Details Line Priority
Exception is caught when Exception is not thrown in org.opentrafficsim.editor.extensions.map.MapLinkData$ShapeListener.notify(Event) STYLE REC_CATCH_EXCEPTION 1252 Medium

org.opentrafficsim.editor.extensions.map.MapPriorityData

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.map.MapPriorityData(MapLinkData) may expose internal representation by storing an externally mutable object into MapPriorityData.linkData MALICIOUS_CODE EI_EXPOSE_REP2 42 Medium

org.opentrafficsim.editor.extensions.map.MapStripeData

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.MapStripeData.getDashOffset() may expose internal representation by returning MapStripeData.dashOffset MALICIOUS_CODE EI_EXPOSE_REP 145 Medium
org.opentrafficsim.editor.extensions.map.MapStripeData.getElements() may expose internal representation by returning MapStripeData.elements MALICIOUS_CODE EI_EXPOSE_REP 139 Medium
org.opentrafficsim.editor.extensions.map.MapStripeData.getWidth(Length) may expose internal representation by returning MapStripeData.width MALICIOUS_CODE EI_EXPOSE_REP 103 Medium
new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.dashOffset MALICIOUS_CODE EI_EXPOSE_REP2 84 Medium
new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.elements MALICIOUS_CODE EI_EXPOSE_REP2 86 Medium
new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.endDirection MALICIOUS_CODE EI_EXPOSE_REP2 91 Medium
new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.middleOffset MALICIOUS_CODE EI_EXPOSE_REP2 89 Medium
new org.opentrafficsim.editor.extensions.map.MapStripeData(Length, XsdTreeNode, CrossSectionGeometry, List, StripeElement$StripeLateralSync, PolyLine2d, MapLinkData$MiddleOffset, Direction, Direction) may expose internal representation by storing an externally mutable object into MapStripeData.startDirection MALICIOUS_CODE EI_EXPOSE_REP2 90 Medium
org.opentrafficsim.editor.extensions.map.MapStripeData.setDashOffset(Length) may expose internal representation by storing an externally mutable object into MapStripeData.dashOffset MALICIOUS_CODE EI_EXPOSE_REP2 163 Medium

org.opentrafficsim.editor.extensions.map.MapVisualizationPanel

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

org.opentrafficsim.editor.extensions.map.RoadLayoutListener$1

Bug Category Details Line Priority
Exception is caught when Exception is not thrown in org.opentrafficsim.editor.extensions.map.RoadLayoutListener$1.hasNext() STYLE REC_CATCH_EXCEPTION 215 Medium

org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe.getObject() may expose internal representation by returning SynchronizableMapStripe.data MALICIOUS_CODE EI_EXPOSE_REP 82 Medium
new org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe(MapLinkData, MapStripeData, StripeData$StripePhaseSync) may expose internal representation by storing an externally mutable object into SynchronizableMapStripe.data MALICIOUS_CODE EI_EXPOSE_REP2 45 Medium
new org.opentrafficsim.editor.extensions.map.SynchronizableMapStripe(MapLinkData, MapStripeData, StripeData$StripePhaseSync) may expose internal representation by storing an externally mutable object into SynchronizableMapStripe.linkData MALICIOUS_CODE EI_EXPOSE_REP2 44 Medium

org.opentrafficsim.editor.extensions.map.edit.DraggableAnnotation

Bug Category Details Line Priority
Shared primitive variable "highlight" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 84 Medium

org.opentrafficsim.editor.extensions.map.edit.DraggableAnnotation$Draggable

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.edit.DraggableAnnotation$Draggable.setNode(XsdTreeNode) may expose internal representation by storing an externally mutable object into DraggableAnnotation$Draggable.node MALICIOUS_CODE EI_EXPOSE_REP2 270 Medium
org.opentrafficsim.editor.extensions.map.edit.DraggableAnnotation$Draggable.setNodeAttribute(XsdTreeNode, String) may expose internal representation by storing an externally mutable object into DraggableAnnotation$Draggable.node MALICIOUS_CODE EI_EXPOSE_REP2 295 Medium

org.opentrafficsim.editor.extensions.map.edit.MapAnnotation

Bug Category Details Line Priority
new org.opentrafficsim.editor.extensions.map.edit.MapAnnotation(OtsShape, EditorMap) may expose internal representation by storing an externally mutable object into MapAnnotation.map MALICIOUS_CODE EI_EXPOSE_REP2 34 Medium

org.opentrafficsim.editor.extensions.map.edit.MapInputListener

Bug Category Details Line Priority
Shared primitive variable "snapSetting" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 418 Medium
Shared primitive variable "dragging" in one thread may not yield the value of the most recent write from another thread MT_CORRECTNESS AT_STALE_THREAD_WRITE_OF_PRIMITIVE 242 Medium
new org.opentrafficsim.editor.extensions.map.edit.MapInputListener(OtsEditor, EditorMap) may expose internal representation by storing an externally mutable object into MapInputListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 171 Medium
new org.opentrafficsim.editor.extensions.map.edit.MapInputListener(OtsEditor, EditorMap) may expose internal representation by storing an externally mutable object into MapInputListener.editorMap MALICIOUS_CODE EI_EXPOSE_REP2 172 Medium

org.opentrafficsim.editor.extensions.map.edit.SelectionAnnotation$ZAdjustedMapData

Bug Category Details Line Priority
org.opentrafficsim.editor.extensions.map.edit.SelectionAnnotation$ZAdjustedMapData.mapData() may expose internal representation by returning SelectionAnnotation$ZAdjustedMapData.mapData MALICIOUS_CODE EI_EXPOSE_REP 82 Medium
new org.opentrafficsim.editor.extensions.map.edit.SelectionAnnotation$ZAdjustedMapData(MapData, double) may expose internal representation by storing an externally mutable object into SelectionAnnotation$ZAdjustedMapData.mapData MALICIOUS_CODE EI_EXPOSE_REP2 82 Medium

org.opentrafficsim.editor.listeners.AttributesListSelectionListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.AttributesListSelectionListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesListSelectionListener.attributesTable MALICIOUS_CODE EI_EXPOSE_REP2 48 Medium
new org.opentrafficsim.editor.listeners.AttributesListSelectionListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesListSelectionListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 47 Medium

org.opentrafficsim.editor.listeners.AttributesMouseListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.AttributesMouseListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesMouseListener.attributesTable MALICIOUS_CODE EI_EXPOSE_REP2 47 Medium
new org.opentrafficsim.editor.listeners.AttributesMouseListener(OtsEditor, JTable) may expose internal representation by storing an externally mutable object into AttributesMouseListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 46 Medium

org.opentrafficsim.editor.listeners.ChangesListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.ChangesListener(OtsEditor, JComboBox) may expose internal representation by storing an externally mutable object into ChangesListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 44 Medium
new org.opentrafficsim.editor.listeners.ChangesListener(OtsEditor, JComboBox) may expose internal representation by storing an externally mutable object into ChangesListener.scenario MALICIOUS_CODE EI_EXPOSE_REP2 45 Medium

org.opentrafficsim.editor.listeners.FieldListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.FieldListener(DocumentListener, JPopupMenu, JTextField) may expose internal representation by storing an externally mutable object into FieldListener.documentListener MALICIOUS_CODE EI_EXPOSE_REP2 38 Medium
new org.opentrafficsim.editor.listeners.FieldListener(DocumentListener, JPopupMenu, JTextField) may expose internal representation by storing an externally mutable object into FieldListener.field MALICIOUS_CODE EI_EXPOSE_REP2 40 Medium
new org.opentrafficsim.editor.listeners.FieldListener(DocumentListener, JPopupMenu, JTextField) may expose internal representation by storing an externally mutable object into FieldListener.popup MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium

org.opentrafficsim.editor.listeners.PopupValueSelectedListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.PopupValueSelectedListener(String, JTable, Consumer, JTreeTable) may expose internal representation by storing an externally mutable object into PopupValueSelectedListener.table MALICIOUS_CODE EI_EXPOSE_REP2 67 Medium
new org.opentrafficsim.editor.listeners.PopupValueSelectedListener(String, JTable, Consumer, JTreeTable) may expose internal representation by storing an externally mutable object into PopupValueSelectedListener.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 69 Medium

org.opentrafficsim.editor.listeners.ScenarioActionListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.ScenarioActionListener(OtsEditor, JTabbedPane, JComboBox, EvalWrapper) may expose internal representation by storing an externally mutable object into ScenarioActionListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 47 Medium
new org.opentrafficsim.editor.listeners.ScenarioActionListener(OtsEditor, JTabbedPane, JComboBox, EvalWrapper) may expose internal representation by storing an externally mutable object into ScenarioActionListener.evalWrapper MALICIOUS_CODE EI_EXPOSE_REP2 50 Medium
new org.opentrafficsim.editor.listeners.ScenarioActionListener(OtsEditor, JTabbedPane, JComboBox, EvalWrapper) may expose internal representation by storing an externally mutable object into ScenarioActionListener.scenario MALICIOUS_CODE EI_EXPOSE_REP2 49 Medium
new org.opentrafficsim.editor.listeners.ScenarioActionListener(OtsEditor, JTabbedPane, JComboBox, EvalWrapper) may expose internal representation by storing an externally mutable object into ScenarioActionListener.visualizationPane MALICIOUS_CODE EI_EXPOSE_REP2 48 Medium

org.opentrafficsim.editor.listeners.XsdTreeEditorListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.XsdTreeEditorListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeEditorListener.attributesTable MALICIOUS_CODE EI_EXPOSE_REP2 54 Medium
new org.opentrafficsim.editor.listeners.XsdTreeEditorListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeEditorListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium
new org.opentrafficsim.editor.listeners.XsdTreeEditorListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeEditorListener.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 53 Medium

org.opentrafficsim.editor.listeners.XsdTreeKeyListener

Bug Category Details Line Priority
new org.opentrafficsim.editor.listeners.XsdTreeKeyListener(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeKeyListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 43 Medium
new org.opentrafficsim.editor.listeners.XsdTreeKeyListener(OtsEditor, JTreeTable) may expose internal representation by storing an externally mutable object into XsdTreeKeyListener.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 44 Medium

org.opentrafficsim.editor.listeners.XsdTreeListener

Bug Category Details Line Priority
Dead store to sepNeeded in org.opentrafficsim.editor.listeners.XsdTreeListener.addMoveNodeGroup(XsdTreeNode, JPopupMenu, boolean) STYLE DLS_DEAD_LOCAL_STORE 532 Medium
new org.opentrafficsim.editor.listeners.XsdTreeListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeListener.attributesTable MALICIOUS_CODE EI_EXPOSE_REP2 83 Medium
new org.opentrafficsim.editor.listeners.XsdTreeListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeListener.editor MALICIOUS_CODE EI_EXPOSE_REP2 81 Medium
new org.opentrafficsim.editor.listeners.XsdTreeListener(OtsEditor, JTreeTable, JTable) may expose internal representation by storing an externally mutable object into XsdTreeListener.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 82 Medium

org.opentrafficsim.editor.render.AttributeCellRenderer

Bug Category Details Line Priority
org.opentrafficsim.editor.render.AttributeCellRenderer.getTableCellRendererComponent(JTable, Object, boolean, boolean, int, int) may expose internal representation by returning AttributeCellRenderer.checkBox MALICIOUS_CODE EI_EXPOSE_REP 129 Medium

org.opentrafficsim.editor.render.AttributesCellEditor

Bug Category Details Line Priority
org.opentrafficsim.editor.render.AttributesCellEditor.getTableCellEditorComponent(JTable, Object, boolean, int, int) may expose internal representation by returning AttributesCellEditor.checkBox MALICIOUS_CODE EI_EXPOSE_REP 138 Medium
new org.opentrafficsim.editor.render.AttributesCellEditor(JTable, OtsEditor) may expose internal representation by storing an externally mutable object into AttributesCellEditor.editor MALICIOUS_CODE EI_EXPOSE_REP2 77 Medium
org.opentrafficsim.editor.render.AttributesCellEditor$2 stored into non-transient field AttributesCellEditor.lastActionListener BAD_PRACTICE SE_BAD_FIELD_STORE 124 Medium

org.opentrafficsim.editor.render.StringCellRenderer

Bug Category Details Line Priority
new org.opentrafficsim.editor.render.StringCellRenderer(JTreeTable) may expose internal representation by storing an externally mutable object into StringCellRenderer.treeTable MALICIOUS_CODE EI_EXPOSE_REP2 44 Medium

org.opentrafficsim.editor.render.XsdTreeCellRenderer

Bug Category Details Line Priority
Exception thrown in class org.opentrafficsim.editor.render.XsdTreeCellRenderer at new org.opentrafficsim.editor.render.XsdTreeCellRenderer(OtsEditor) 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
new org.opentrafficsim.editor.render.XsdTreeCellRenderer(OtsEditor) may expose internal representation by storing an externally mutable object into XsdTreeCellRenderer.editor MALICIOUS_CODE EI_EXPOSE_REP2 58 Medium