FindBugs Results

The following document contains the results of FindBugs.

Summary

FilesErrors
2280

Files

FilesViolations
net.sourceforge.jdbdump.connect.DatabaseConnectorFactory 4
net.sourceforge.jdbdump.connect.ConfigurationIO 1
net.sourceforge.jdbdump.connect.Configuration 15
net.sourceforge.jdbdump.connect.User 1
net.sourceforge.jdbdump.connect.DatabaseConnectionData 3
net.sourceforge.jdbdump.connect.DatabaseBackupData 2
net.sourceforge.jdbdump.connect.TestDump 1
net.sourceforge.jdbdump.gui.DbBqpBean 2
net.sourceforge.jdbdump.dump.BinaryFileManager 2
net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector 16
net.sourceforge.jdbdump.connect.connectors.MysqlConnector 16
net.sourceforge.jdbdump.gui.DbEditBean 1
net.sourceforge.jdbdump.dump.Index 1
net.sourceforge.jdbdump.dump.PlainTextFileManager 1
net.sourceforge.jdbdump.dump.Procedure 2
net.sourceforge.jdbdump.dump.Sequence 2
net.sourceforge.jdbdump.dump.Trigger 2
net.sourceforge.jdbdump.dump.Type 2
net.sourceforge.jdbdump.dump.View 2
net.sourceforge.jdbdump.gui.DbListBean 1
net.sourceforge.jdbdump.gui.DbBqpListBean 1
net.sourceforge.jdbdump.dump.Table 2

net.sourceforge.jdbdump.connect.DatabaseConnectorFactory

ViolationLine
Dm: net.sourceforge.jdbdump.connect.DatabaseConnectorFactory.listPlugins(String,Class) invokes dubious new String(String) constructor; just use the argument 132
ITA: Method net.sourceforge.jdbdump.connect.DatabaseConnectorFactory.listPlugins() uses Collection.toArray() with zero-length array argument 60
DLS: Dead store to local variable in method net.sourceforge.jdbdump.connect.DatabaseConnectorFactory.listPlugins(String) 70
MS: net.sourceforge.jdbdump.connect.DatabaseConnectorFactory.singleton should be package protected 0

net.sourceforge.jdbdump.connect.ConfigurationIO

ViolationLine
REC: Method net.sourceforge.jdbdump.connect.ConfigurationIO.load() catches Exception, but Exception is not thrown in the try block and RuntimeException is not explicitly caught 52

net.sourceforge.jdbdump.connect.Configuration

ViolationLine
CN: clone method net.sourceforge.jdbdump.connect.Configuration.clone() does not call super.clone() 104
Dm: net.sourceforge.jdbdump.connect.Configuration.<clinit>() invokes dubious new String() constructor; just use "" 32
EI: net.sourceforge.jdbdump.connect.Configuration.getConnections() may expose internal representation by returning net.sourceforge.jdbdump.connect.Configuration.connections 251
EI: net.sourceforge.jdbdump.connect.Configuration.getBackups() may expose internal representation by returning net.sourceforge.jdbdump.connect.Configuration.backups 261
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.confIO from instance method net.sourceforge.jdbdump.connect.Configuration.<init>() 71
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.confData from instance method net.sourceforge.jdbdump.connect.Configuration.<init>() 74
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.backupDir from instance method net.sourceforge.jdbdump.connect.Configuration.<init>() 78
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.connections from instance method net.sourceforge.jdbdump.connect.Configuration.setVariables() 110
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.backups from instance method net.sourceforge.jdbdump.connect.Configuration.setVariables() 113
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.email from instance method net.sourceforge.jdbdump.connect.Configuration.setVariables() 116
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.confData from instance method net.sourceforge.jdbdump.connect.Configuration.smartReload() 157
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.email from instance method net.sourceforge.jdbdump.connect.Configuration.setEmail(String) 270
ST: Write to static field net.sourceforge.jdbdump.connect.Configuration.confData from instance method net.sourceforge.jdbdump.connect.Configuration.loadData() 288
RCN: Nullcheck of value previously dereferenced net.sourceforge.jdbdump.connect.Configuration.removeBackup(DatabaseBackupData) 239
UrF: Unread field: net.sourceforge.jdbdump.connect.Configuration.logger 0

net.sourceforge.jdbdump.connect.User

ViolationLine
RE: Invalid syntax for regular expression in net.sourceforge.jdbdump.connect.User.isValidEmail(String) 88

net.sourceforge.jdbdump.connect.DatabaseConnectionData

ViolationLine
DE: net.sourceforge.jdbdump.connect.DatabaseConnectionData.<init>(String,String,String,String,String,String,String,String) might ignore java.lang.Exception 48
ES: Comparison of String objects using == or != in net.sourceforge.jdbdump.connect.DatabaseConnectionData.setProperty(String,String) 56
REC: Method net.sourceforge.jdbdump.connect.DatabaseConnectionData.<init>(String,String,String,String,String,String,String,String) catches Exception, but Exception is not thrown in the try block and RuntimeException is not explicitly caught 48

net.sourceforge.jdbdump.connect.DatabaseBackupData

ViolationLine
DE: net.sourceforge.jdbdump.connect.DatabaseBackupData.<init>(String,String,String,String,String,String,String,String,String,String) might ignore java.lang.Exception 35
REC: Method net.sourceforge.jdbdump.connect.DatabaseBackupData.<init>(String,String,String,String,String,String,String,String,String,String) catches Exception, but Exception is not thrown in the try block and RuntimeException is not explicitly caught 35

net.sourceforge.jdbdump.connect.TestDump

ViolationLine
SBSC: Method net.sourceforge.jdbdump.connect.TestDump.main(String[]) concatenates strings using + in a loop 165

net.sourceforge.jdbdump.gui.DbBqpBean

ViolationLine
Dm: net.sourceforge.jdbdump.gui.DbBqpBean.backupDatabase() invokes dubious new String() constructor; just use "" 102
Dm: net.sourceforge.jdbdump.gui.DbBqpBean.restoreDatabase() invokes dubious new String() constructor; just use "" 145

net.sourceforge.jdbdump.dump.BinaryFileManager

ViolationLine
REC: Method net.sourceforge.jdbdump.dump.BinaryFileManager.exportDump(Dump,java.io.File,DumpFileManager$CompressionMethod) catches Exception, but Exception is not thrown in the try block and RuntimeException is not explicitly caught 60
REC: Method net.sourceforge.jdbdump.dump.BinaryFileManager.importDump(java.io.File,DumpFileManager$CompressionMethod) catches Exception, but Exception is not thrown in the try block and RuntimeException is not explicitly caught 147

net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector

ViolationLine
Dm: Method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.restoreTableStructure(net.sourceforge.jdbdump.dump.Table) invokes dubious String.toUpperCase() or String.toLowerCase; use the Locale parameterized version instead 317
PZLA: Should net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.getTableDataLine() return a zero length array rather than null? 537
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.clearDatabase(net.sourceforge.jdbdump.dump.Dump) may fail to close database resource 233
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.clearConstraints(net.sourceforge.jdbdump.dump.Table) may fail to close database resource on exception 267
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.restoreTableStructure(net.sourceforge.jdbdump.dump.Table) may fail to close database resource on exception 293
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.restoreTableConstraints(net.sourceforge.jdbdump.dump.Table) may fail to close database resource on exception 400
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.restoreTableData(net.sourceforge.jdbdump.dump.Table) may fail to close database resource 447
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.initializeTableData(String) may fail to close database resource 502
ODR: net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.getTableDataLine() may fail to close database resource 525
SBSC: Method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.dumpTablePrimaryKeys(net.sourceforge.jdbdump.dump.Table) concatenates strings using + in a loop 114
SBSC: Method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.dumpTableForeignKeys(net.sourceforge.jdbdump.dump.Table) concatenates strings using + in a loop 172
DLS: Dead store to local variable in method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.dumpTablePrimaryKeys(net.sourceforge.jdbdump.dump.Table) 100
DLS: Dead store to local variable in method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.restoreTableData(net.sourceforge.jdbdump.dump.Table) 436
WMI: Method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.dumpTablePrimaryKeys(net.sourceforge.jdbdump.dump.Table) makes inefficient use of keySet iterator instead of entrySet iterator 114
WMI: Method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.dumpTableForeignKeys(net.sourceforge.jdbdump.dump.Table) makes inefficient use of keySet iterator instead of entrySet iterator 159
WMI: Method net.sourceforge.jdbdump.connect.connectors.PostgresqlConnector.dumpTableForeignKeys(net.sourceforge.jdbdump.dump.Table) makes inefficient use of keySet iterator instead of entrySet iterator 163

net.sourceforge.jdbdump.connect.connectors.MysqlConnector

ViolationLine
Dm: Method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.restoreTableStructure(net.sourceforge.jdbdump.dump.Table) invokes dubious String.toUpperCase() or String.toLowerCase; use the Locale parameterized version instead 321
PZLA: Should net.sourceforge.jdbdump.connect.connectors.MysqlConnector.getTableDataLine() return a zero length array rather than null? 545
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.dumpColumn(net.sourceforge.jdbdump.dump.Column,java.sql.ResultSet) may fail to close database resource 198
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.clearDatabase(net.sourceforge.jdbdump.dump.Dump) may fail to close database resource 242
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.clearConstraints(net.sourceforge.jdbdump.dump.Table) may fail to close database resource on exception 271
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.restoreTableStructure(net.sourceforge.jdbdump.dump.Table) may fail to close database resource on exception 297
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.restoreTableConstraints(net.sourceforge.jdbdump.dump.Table) may fail to close database resource on exception 398
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.restoreTableData(net.sourceforge.jdbdump.dump.Table) may fail to close database resource 453
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.initializeTableData(String) may fail to close database resource 510
ODR: net.sourceforge.jdbdump.connect.connectors.MysqlConnector.getTableDataLine() may fail to close database resource 533
SBSC: Method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.dumpTablePrimaryKeys(net.sourceforge.jdbdump.dump.Table) concatenates strings using + in a loop 111
SBSC: Method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.dumpTableForeignKeys(net.sourceforge.jdbdump.dump.Table) concatenates strings using + in a loop 169
DLS: Dead store to local variable in method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.restoreTableData(net.sourceforge.jdbdump.dump.Table) 442
WMI: Method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.dumpTablePrimaryKeys(net.sourceforge.jdbdump.dump.Table) makes inefficient use of keySet iterator instead of entrySet iterator 111
WMI: Method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.dumpTableForeignKeys(net.sourceforge.jdbdump.dump.Table) makes inefficient use of keySet iterator instead of entrySet iterator 156
WMI: Method net.sourceforge.jdbdump.connect.connectors.MysqlConnector.dumpTableForeignKeys(net.sourceforge.jdbdump.dump.Table) makes inefficient use of keySet iterator instead of entrySet iterator 160

net.sourceforge.jdbdump.gui.DbEditBean

ViolationLine
Nm: Confusing to have methods net.sourceforge.jdbdump.gui.DbEditBean.getUrl() and net.sourceforge.jdbdump.connect.DatabaseConnectionData.getURL() 0

net.sourceforge.jdbdump.dump.Index

ViolationLine
UuF: Unused field: net.sourceforge.jdbdump.dump.Index.name 0

net.sourceforge.jdbdump.dump.PlainTextFileManager

ViolationLine
UrF: Unread field: net.sourceforge.jdbdump.dump.PlainTextFileManager.logger 0

net.sourceforge.jdbdump.dump.Procedure

ViolationLine
UuF: Unused field: net.sourceforge.jdbdump.dump.Procedure.name 0
UuF: Unused field: net.sourceforge.jdbdump.dump.Procedure.text 0

net.sourceforge.jdbdump.dump.Sequence

ViolationLine
UuF: Unused field: net.sourceforge.jdbdump.dump.Sequence.name 0
UuF: Unused field: net.sourceforge.jdbdump.dump.Sequence.text 0

net.sourceforge.jdbdump.dump.Trigger

ViolationLine
UuF: Unused field: net.sourceforge.jdbdump.dump.Trigger.name 0
UuF: Unused field: net.sourceforge.jdbdump.dump.Trigger.text 0

net.sourceforge.jdbdump.dump.Type

ViolationLine
UuF: Unused field: net.sourceforge.jdbdump.dump.Type.name 0
UuF: Unused field: net.sourceforge.jdbdump.dump.Type.text 0

net.sourceforge.jdbdump.dump.View

ViolationLine
UuF: Unused field: net.sourceforge.jdbdump.dump.View.name 0
UuF: Unused field: net.sourceforge.jdbdump.dump.View.text 0

net.sourceforge.jdbdump.gui.DbListBean

ViolationLine
IS2: Inconsistent synchronization of net.sourceforge.jdbdump.gui.DbListBean.list; locked 50% of time 29

net.sourceforge.jdbdump.gui.DbBqpListBean

ViolationLine
IS2: Inconsistent synchronization of net.sourceforge.jdbdump.gui.DbBqpListBean.list; locked 50% of time 28

net.sourceforge.jdbdump.dump.Table

ViolationLine
CD: Class net.sourceforge.jdbdump.dump.Table has a circular dependency with other classes. 0
CD: Class net.sourceforge.jdbdump.dump.Table has a circular dependency with other classes. 0