2015-04-15 18:32:56 +00:00
|
|
|
|
///
|
2020-03-05 12:59:43 +00:00
|
|
|
|
/// Copyright (c) 2013-2020 Sensus Slovensko a.s.
|
2015-04-15 18:32:56 +00:00
|
|
|
|
///
|
|
|
|
|
|
using System;
|
2014-07-28 07:54:35 +00:00
|
|
|
|
using System.Text;
|
|
|
|
|
|
using System.Xml.Serialization;
|
|
|
|
|
|
|
2015-12-04 16:17:20 +00:00
|
|
|
|
namespace Config
|
2014-07-28 07:54:35 +00:00
|
|
|
|
{
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Test bench database settings, contains bench name and settings od several databases
|
|
|
|
|
|
/// </summary>
|
2020-06-25 09:55:07 +00:00
|
|
|
|
public class DatabaseSettings : ICloneable, IComparable
|
2014-07-28 07:54:35 +00:00
|
|
|
|
{
|
|
|
|
|
|
// Public fields
|
|
|
|
|
|
public string BenchName;
|
|
|
|
|
|
public bool IsRealBench;
|
2020-03-05 12:59:43 +00:00
|
|
|
|
public Users.DBSettings ProceduresDBSettings; /// Configuration database settings
|
2017-03-19 09:37:06 +00:00
|
|
|
|
public Users.DBSettings WaterMetersDBSettings; /// Results database settings
|
2020-03-05 12:59:43 +00:00
|
|
|
|
public Users.DBSettings EventsDBSettings; /// Events database settings
|
|
|
|
|
|
public Users.DBSettings UsersDBSettings; /// Shared configuration database settings
|
2014-07-28 07:54:35 +00:00
|
|
|
|
|
|
|
|
|
|
// Constructor
|
|
|
|
|
|
public DatabaseSettings()
|
|
|
|
|
|
{
|
2016-12-19 13:39:28 +00:00
|
|
|
|
BenchName = String.Empty; /// Empty string (avoid null)
|
2014-07-28 07:54:35 +00:00
|
|
|
|
IsRealBench = false;
|
2021-09-23 09:46:40 +00:00
|
|
|
|
ProceduresDBSettings = new Users.DBSettings(Common.DBType.MySql, string.Empty);
|
|
|
|
|
|
WaterMetersDBSettings = new Users.DBSettings(Common.DBType.MySql, string.Empty);
|
|
|
|
|
|
EventsDBSettings = new Users.DBSettings(Common.DBType.MySql, string.Empty);
|
|
|
|
|
|
UsersDBSettings = new Users.DBSettings(Common.DBType.MySql, string.Empty);
|
2014-07-28 07:54:35 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public object Clone()
|
|
|
|
|
|
{
|
|
|
|
|
|
DatabaseSettings result = new DatabaseSettings();
|
|
|
|
|
|
|
|
|
|
|
|
result.BenchName = BenchName;
|
|
|
|
|
|
result.IsRealBench = IsRealBench;
|
2017-03-19 09:37:06 +00:00
|
|
|
|
result.ProceduresDBSettings = (Users.DBSettings)ProceduresDBSettings.Clone();
|
|
|
|
|
|
result.WaterMetersDBSettings = (Users.DBSettings)WaterMetersDBSettings.Clone();
|
2020-03-05 12:59:43 +00:00
|
|
|
|
result.EventsDBSettings = (Users.DBSettings)EventsDBSettings.Clone();
|
2018-08-30 06:04:58 +00:00
|
|
|
|
result.UsersDBSettings = (Users.DBSettings)UsersDBSettings.Clone();
|
2014-07-28 07:54:35 +00:00
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
|
}
|
2016-01-14 20:49:20 +00:00
|
|
|
|
|
2020-06-25 09:55:07 +00:00
|
|
|
|
public int CompareTo(object dbs2)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (!(dbs2 is DatabaseSettings)) return 0;
|
|
|
|
|
|
return String.Compare(BenchName, (dbs2 as DatabaseSettings).BenchName);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2016-01-14 20:49:20 +00:00
|
|
|
|
public override string ToString()
|
|
|
|
|
|
{
|
2020-03-05 12:59:43 +00:00
|
|
|
|
return string.Format("{0} config={1} results={2} events={3} users={4}",
|
2016-12-19 13:39:28 +00:00
|
|
|
|
BenchName,
|
|
|
|
|
|
ProceduresDBSettings.ConnectionString,
|
|
|
|
|
|
WaterMetersDBSettings.ConnectionString,
|
2020-03-05 12:59:43 +00:00
|
|
|
|
EventsDBSettings.ConnectionString,
|
2016-12-19 13:39:28 +00:00
|
|
|
|
UsersDBSettings.ConnectionString);
|
2016-01-14 20:49:20 +00:00
|
|
|
|
}
|
2014-07-28 07:54:35 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|