public String getDescription() {
return "JDBC Auditing Service";
}
public JDBCAdapter createAdapter() throws AuditorException {
JDBCAdapter jdbcAdapter;
if (this.dataSource == null) {
throw new IllegalArgumentException("dataSource should not be null");
}
if (statements == null) {
statements = new Statements();
statements.setStoreTableName(tableName);
}
Connection connection = null;
boolean restoreAutoCommit = false;
try {
connection = getDataSource().getConnection();
if (connection.getAutoCommit()) {
connection.setAutoCommit(false);
restoreAutoCommit = true;
}
jdbcAdapter = JDBCAdapterFactory.getAdapter(connection);
if (statements == null) {
statements = new Statements();
statements.setStoreTableName(tableName);
}
jdbcAdapter.setStatements(statements);
if (createDataBase) {
jdbcAdapter.doCreateTables(connection);
}
connection.commit();
} catch (SQLException e) {
throw (AuditorException) new AuditorException("Exception while creating database").initCause(e);
} catch (IOException e) {