/// /// Copyright (c) 2013-2017 Sensus Metering Systems /// using System; using System.Text; using System.Xml.Serialization; namespace Config { /// /// Test bench database settings, contains bench name and settings od several databases /// public class DatabaseSettings : ICloneable { // Public fields public string BenchName; public bool IsRealBench; public Users.DBSettings ProceduresDBSettings; /// Config database settings public Users.DBSettings WaterMetersDBSettings; /// Results database settings public Users.DBSettings UsersDBSettings; /// Users database settings // Constructor public DatabaseSettings() { BenchName = String.Empty; /// Empty string (avoid null) IsRealBench = false; ProceduresDBSettings = new Users.DBSettings(Users.Entities.DBType.MySql, string.Empty); WaterMetersDBSettings = new Users.DBSettings(Users.Entities.DBType.MySql, string.Empty); UsersDBSettings = new Users.DBSettings(Users.Entities.DBType.MySql, string.Empty); } public object Clone() { DatabaseSettings result = new DatabaseSettings(); result.BenchName = BenchName; result.IsRealBench = IsRealBench; result.ProceduresDBSettings = (Users.DBSettings)ProceduresDBSettings.Clone(); result.WaterMetersDBSettings = (Users.DBSettings)WaterMetersDBSettings.Clone(); result.UsersDBSettings = (Users.DBSettings)UsersDBSettings.Clone(); return result; } public override string ToString() { return string.Format("{0} config={1} results={2} users={3}", BenchName, ProceduresDBSettings.ConnectionString, WaterMetersDBSettings.ConnectionString, UsersDBSettings.ConnectionString); } } }