protected bool InitDatabase()
{
if (!DbClient.TestDatabaseConnection())
{
_log.Error("InitDatabase failed: Unable to connect to database");
return false;
}
using (var conn = DbClient.GetConnection())
{
_log.Debug("Checking for geographies table...");
if (!DataClient.HasTable(conn, DbClient, this.GetGeographyTablename())
|| (DataClient.RowCount(conn, DbClient, this.GetGeographyTablename()) == 0))
{
if (!CreateGeographiesTable(conn))
{
//error message is in guard function
return false;
}
}
_log.Debug("Checking for columnMappings table...");
if ((!DataClient.HasTable(conn, DbClient, "columnMappings"))
|| (DataClient.RowCount(conn, DbClient, "columnMappings") == 0))
{
if (!CreateColumnMappingsTable(conn))
{
//error message is in guard function
return false;
}
}
}
return true;
}