コード例 #1
0
        public void LoadData()
        {
            hMailServer.Settings settings = APICreator.Application.Settings;
            hMailServer.Cache    cache    = settings.Cache;

            checkEnabled.Checked = cache.Enabled;

            textCacheDomainTTL.Number           = cache.DomainCacheTTL;
            textCacheAccountTTL.Number          = cache.AccountCacheTTL;
            textCacheAliasTTL.Number            = cache.AliasCacheTTL;
            textCacheDistributionListTTL.Number = cache.DistributionListCacheTTL;

            textTCPIPThreads.Number           = settings.TCPIPThreads;
            textDeliveryThreads.Number        = settings.MaxDeliveryThreads;
            textMaxAsynchronousThreads.Number = settings.MaxAsynchronousThreads;

            comboWorkerThreadPriority.SelectedValue = settings.WorkerThreadPriority;

            hMailServer.MessageIndexing indexing = settings.MessageIndexing;

            checkMessageIndexingEnabled.Checked = indexing.Enabled;

            Marshal.ReleaseComObject(indexing);
            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(cache);

            EnableDisable();
        }
コード例 #2
0
        public bool SaveData()
        {
            hMailServer.Settings        settings = APICreator.Application.Settings;
            hMailServer.Cache           cache    = settings.Cache;
            hMailServer.MessageIndexing indexing = settings.MessageIndexing;

            cache.Enabled = checkEnabled.Checked;

            cache.DomainCacheTTL           = textCacheDomainTTL.Number;
            cache.AccountCacheTTL          = textCacheAccountTTL.Number;
            cache.AliasCacheTTL            = textCacheAliasTTL.Number;
            cache.DistributionListCacheTTL = textCacheDistributionListTTL.Number;

            settings.TCPIPThreads           = textTCPIPThreads.Number;
            settings.MaxDeliveryThreads     = textDeliveryThreads.Number;
            settings.MaxAsynchronousThreads = textMaxAsynchronousThreads.Number;

            settings.WorkerThreadPriority = (int)comboWorkerThreadPriority.SelectedValue;

            indexing.Enabled = checkMessageIndexingEnabled.Checked;

            DirtyChecker.SetClean(this);

            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(cache);
            Marshal.ReleaseComObject(indexing);

            return(true);
        }
コード例 #3
0
        private void timerRefreshHitRate_Tick(object sender, EventArgs e)
        {
            // No reason to refresh stats if we aren't looking at the cache page.
            if (tabControl.SelectedTab.Name != "tabPageCache")
            {
                return;
            }

            hMailServer.Settings settings = APICreator.Application.Settings;
            hMailServer.Cache    cache    = settings.Cache;

            labelDomainHitRate.Text           = cache.DomainHitRate.ToString();
            labelAccountHitRate.Text          = cache.AccountHitRate.ToString();
            labelAliasHitRate.Text            = cache.AliasHitRate.ToString();
            labelDistributionListHitRate.Text = cache.DistributionListHitRate.ToString();
            Marshal.ReleaseComObject(settings);
            Marshal.ReleaseComObject(cache);
        }