SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.8.6

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
27 16 0 0

Files

Class Bugs
org.djutils.data.Column 2
org.djutils.data.Row 2
org.djutils.data.Table 1
org.djutils.data.csv.CsvData 3
org.djutils.data.csv.TsvData 2
org.djutils.data.json.JsonData 3
org.djutils.data.xml.XmlData 3

org.djutils.data.Column

Bug Category Details Line Priority
Exception thrown in class org.djutils.data.Column at new org.djutils.data.Column(String, String, Class) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 87 Medium
Exception thrown in class org.djutils.data.Column at new org.djutils.data.Column(String, String, Class, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 53 Medium

org.djutils.data.Row

Bug Category Details Line Priority
org.djutils.data.Row.getValues() may expose internal representation by returning Row.values MALICIOUS_CODE EI_EXPOSE_REP 73 Medium
new org.djutils.data.Row(Table, Object[]) may expose internal representation by storing an externally mutable object into Row.values MALICIOUS_CODE EI_EXPOSE_REP2 32 Medium

org.djutils.data.Table

Bug Category Details Line Priority
Exception thrown in class org.djutils.data.Table at new org.djutils.data.Table(String, String, Collection) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 45 Medium

org.djutils.data.csv.CsvData

Bug Category Details Line Priority
Found reliance on default encoding in org.djutils.data.csv.CsvData.readData(String, String): new java.io.FileReader(String) I18N DM_DEFAULT_ENCODING 386 High
Found reliance on default encoding in org.djutils.data.csv.CsvData.readZippedData(String, String, String, char, char): new java.io.InputStreamReader(InputStream) I18N DM_DEFAULT_ENCODING 433 High
Found reliance on default encoding in org.djutils.data.csv.CsvData.writeData(String, String, Table): new java.io.FileWriter(String) I18N DM_DEFAULT_ENCODING 242 High

org.djutils.data.csv.TsvData

Bug Category Details Line Priority
Found reliance on default encoding in org.djutils.data.csv.TsvData.readData(String, String): new java.io.FileReader(String) I18N DM_DEFAULT_ENCODING 119 High
Found reliance on default encoding in org.djutils.data.csv.TsvData.writeData(String, String, Table): new java.io.FileWriter(String) I18N DM_DEFAULT_ENCODING 71 High

org.djutils.data.json.JsonData

Bug Category Details Line Priority
Boxing/unboxing to parse a primitive org.djutils.data.json.JsonData.readData(Reader) PERFORMANCE DM_BOXED_PRIMITIVE_FOR_PARSING 222 High
Found reliance on default encoding in org.djutils.data.json.JsonData.readData(String): new java.io.FileReader(String) I18N DM_DEFAULT_ENCODING 338 High
Found reliance on default encoding in org.djutils.data.json.JsonData.writeData(String, Table): new java.io.FileWriter(String) I18N DM_DEFAULT_ENCODING 174 High

org.djutils.data.xml.XmlData

Bug Category Details Line Priority
Boxing/unboxing to parse a primitive org.djutils.data.xml.XmlData.readData(Reader) PERFORMANCE DM_BOXED_PRIMITIVE_FOR_PARSING 240 High
Found reliance on default encoding in org.djutils.data.xml.XmlData.readData(String): new java.io.FileReader(String) I18N DM_DEFAULT_ENCODING 428 High
Found reliance on default encoding in org.djutils.data.xml.XmlData.writeData(String, Table): new java.io.FileWriter(String) I18N DM_DEFAULT_ENCODING 195 High