/* Thor Server Project Copyright 2008 Joe Hegarty This file is part of The Thor Server Project. The Thor Server Project is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. The Thor Server Project is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with The Thor Server Project. If not, see . */ using System; using System.Collections.Generic; using System.Linq; using System.Text; using ThorServer.Core; namespace ThorServer.Data { public class GameConfig { public static void VerifyDatabaseVersion() { try { Database db = new Database(); db.sqlexecute.Parameters.AddWithValue("@configversion", 1); int dbVer = db.getInt("SELECT DatabaseVersion FROM GameConfig WHERE ConfigVersion = @configversion"); if (dbVer != int.Parse(Settings.DatabaseVersion)) { Logging.LogEvent("Incorrect database version. Version is " + dbVer.ToString() + " was expecting " + Settings.DatabaseVersion, Logging.LogLevel.Important); throw new Exception("Incorrect database version"); } else { Logging.LogEvent("Verified database was version " + Settings.DatabaseVersion, Logging.LogLevel.Info); } } catch (Exception e) { Logging.LogEvent("An error occured trying to verify the database version. Stack: " + e.ToString(), Logging.LogLevel.Important); throw new Exception("Could not verify database version"); } } } }