コード例 #1
0
        public void UpdateSettings(Dictionary <string, string> newsettings, bool clearExisting)
        {
            if (newsettings == null)
            {
                throw new ArgumentNullException();
            }

            lock (m_connection.m_lock)
            {
                m_latestUpdate = null;
                if (clearExisting)
                {
                    m_values.Clear();
                }

                foreach (var k in newsettings)
                {
                    m_values[k.Key] = newsettings[k.Key];
                }

                SaveSettings();
            }

            System.Threading.Interlocked.Increment(ref Program.LastDataUpdateID);
            Program.StatusEventNotifyer.SignalNewEvent();
        }
コード例 #2
0
ファイル: ServerSettings.cs プロジェクト: wuwx/duplicati
        public void UpdateSettings(Dictionary <string, string> newsettings, bool clearExisting)
        {
            if (newsettings == null)
            {
                throw new ArgumentNullException();
            }

            lock (m_connection.m_lock)
            {
                m_latestUpdate = null;
                if (clearExisting)
                {
                    m_values.Clear();
                }

                foreach (var k in newsettings)
                {
                    if (!clearExisting && newsettings[k.Key] == null && k.Key.StartsWith("--", StringComparison.Ordinal))
                    {
                        m_values.Remove(k.Key);
                    }
                    else
                    {
                        m_values[k.Key] = newsettings[k.Key];
                    }
                }
            }

            SaveSettings();

            if (newsettings.Keys.Contains(CONST.SERVER_PASSPHRASE))
            {
                GenerateWebserverPasswordTrayIcon();
            }
        }
コード例 #3
0
ファイル: ApplicationSettings.cs プロジェクト: admz/duplicati
        public void UpdateSettings(Dictionary<string, string> newsettings)
        {
            if (newsettings == null)
                throw new ArgumentNullException();

            lock(m_connection.m_lock)
            {
                m_latestUpdate = null;
                m_values.Clear();

                foreach(var k in newsettings)
                    m_values[k.Key] = newsettings[k.Key];

                SaveSettings();
            }

            System.Threading.Interlocked.Increment(ref Program.LastDataUpdateID);
            Program.StatusEventNotifyer.SignalNewEvent();
        }
コード例 #4
0
        public void UpdateSettings(Dictionary<string, string> newsettings, bool clearExisting)
        {
            if (newsettings == null)
                throw new ArgumentNullException();

            lock(m_connection.m_lock)
            {
                m_latestUpdate = null;
                if (clearExisting)
                    m_values.Clear();

                foreach(var k in newsettings)
                    if (!clearExisting && newsettings[k.Key] == null && k.Key.StartsWith("--"))
                        m_values.Remove(k.Key);
                    else
                        m_values[k.Key] = newsettings[k.Key];

                SaveSettings();
            }

            System.Threading.Interlocked.Increment(ref Program.LastDataUpdateID);
            Program.StatusEventNotifyer.SignalNewEvent();
        }