/// <summary> /// Pulls secondary to primary, /// in context of current user. /// </summary> public void PullSecondaryToPrimary() { logger.Info("PullSecondaryToPrimary......"); try{ _primary.Push(Pull()); } catch { /* eat them! */ } logger.Info("PullSecondaryToPrimary......FINISHED!!!"); }
private DataBaseManager() { _primary = Sqlite.LoadFromFile(); _primary.ProgressChangedEvent += OnProgressChangedEvent; _primary.ProgressFinishEvent += OnProgressFinishEvent; if (AppSettings.Instance.SqlEnabled == "true") { if (AppSettings.Instance.SqlType == "MySql" && !string.IsNullOrEmpty(AppSettings.Instance.MySqlServer)) { MySqlConnectionStringBuilder mysqlBuiler = new MySqlConnectionStringBuilder()// Database is set later in constructor! { Server = AppSettings.Instance.MySqlServer, UserID = AppSettings.Instance.MySqlUserId, Password = AppSettings.Instance.MySqlPassword, Port = (uint)AppSettings.Instance.MySqlPort, SslMode = AppSettings.Instance.MySqlSsl == "true" ? MySqlSslMode.Required : MySqlSslMode.None }; try { _secondary = new MySql(mysqlBuiler, MySql.UpdateModes.Async); // Associate events _secondary.TimeDateaUpdate += OnTimeDateaUpdate; _secondary.ProgressChangedEvent += OnProgressChangedEvent; _secondary.ProgressFinishEvent += OnProgressFinishEvent; _secondary.ConnectionChangedEvent += OnConnectionChangedEvent; _secondary.UpdateChangedEvent += OnUpdateChangedEvent; var daysInWeek = _primary.DaysInRange(StartEndWeek(DateTime.Today)[0], StartEndWeek(DateTime.Today)[1]); if (_secondary.ServerState == State.Connected) { _secondary.Push(daysInWeek); } } catch (Exception e) { Console.WriteLine(e); MessageBox.Show(e.Message); } } else if (AppSettings.Instance.SqlType == "Azure" && !string.IsNullOrEmpty(AppSettings.Instance.AzureDateSource)) { MessageBox.Show("Azure sql not implemented!"); } } }
/// <summary> /// Pushes given day list /// to secondary server. /// </summary> /// <param name="days"></param> public override void Push(List <Day> days) { logger.Info("Push......"); _secondary?.Push(days); logger.Info("Push......FINISHED!!!"); }