protected override void Initialize(object navigationData) { base.Initialize(navigationData); var service = (IConfigurationService)this.GetService(typeof(IConfigurationService)); pictureBox1.Image = service.Scope.GetImage(); _feature = new CachingFeature(this.Module); _feature.CachingSettingsUpdated = this.InitializeListPage; _feature.Load(); }
public NewCachingDialog(IServiceProvider serviceProvider, CachingItem existing, CachingFeature feature) : base(serviceProvider) { InitializeComponent(); Text = existing == null ? "Add Cache Rule" : "Edit Cache Rule"; _feature = feature; Item = existing ?? new CachingItem(null); if (existing == null) { return; } txtExtension.Text = Item.Extension; cbUser.Checked = Item.Policy != 0L; rbUserFile.Checked = Item.Policy == 1L; rbUserTime.Checked = Item.Policy == 2L; rbUserNo.Checked = Item.Policy == 3L; cbKernel.Checked = Item.KernelCachePolicy != 0L; rbKernelFile.Checked = Item.KernelCachePolicy == 1L; rbKernelTime.Checked = Item.KernelCachePolicy == 2L; rbKernelNo.Checked = Item.KernelCachePolicy == 3L; txtKernelTime.Text = txtUserTime.Text = Item.Duration.ToString(); var container = new CompositeDisposable(); FormClosed += (sender, args) => container.Dispose(); container.Add( Observable.FromEventPattern <EventArgs>(btnOK, "Click") .Subscribe(evt => { Item.Extension = txtExtension.Text; Item.Duration = TimeSpan.Parse(txtKernelTime.Text); if (!cbUser.Checked) { Item.Policy = 0L; } else if (rbUserFile.Checked) { Item.Policy = 1L; } else if (rbUserTime.Checked) { Item.Policy = 2L; } else if (rbUserNo.Checked) { Item.Policy = 3L; } if (!cbKernel.Checked) { Item.KernelCachePolicy = 0L; } else if (rbKernelFile.Checked) { Item.KernelCachePolicy = 1L; } else if (rbKernelTime.Checked) { Item.KernelCachePolicy = 2L; } else if (rbKernelNo.Checked) { Item.KernelCachePolicy = 3L; } if (_feature.Items.Any(item => item.Match(Item))) { ShowMessage( "This rule already exists.", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1); return; } DialogResult = DialogResult.OK; })); container.Add( Observable.FromEventPattern <EventArgs>(btnAdvanced, "Click") .Subscribe(evt => { var dialog = new CachingAdvancedDialog(ServiceProvider, Item); dialog.ShowDialog(); })); container.Add( Observable.FromEventPattern <EventArgs>(txtExtension, "TextChanged") .Subscribe(evt => { btnOK.Enabled = !string.IsNullOrWhiteSpace(txtExtension.Text); })); }
public CachingAdvancedDialog(IServiceProvider serviceProvider, CachingItem item, CachingFeature feature) : base(serviceProvider) { InitializeComponent(); cbString.Checked = !string.IsNullOrWhiteSpace(item.VaryByQueryString); txtString.Text = item.VaryByQueryString; cbHeaders.Checked = !string.IsNullOrWhiteSpace(item.VaryByHeaders); txtHeaders.Text = item.VaryByHeaders; var container = new CompositeDisposable(); FormClosed += (sender, args) => container.Dispose(); container.Add( Observable.FromEventPattern <EventArgs>(btnOK, "Click") .ObserveOn(System.Threading.SynchronizationContext.Current) .Subscribe(evt => { item.VaryByHeaders = txtHeaders.Text; item.VaryByQueryString = txtString.Text; DialogResult = DialogResult.OK; })); container.Add( Observable.FromEventPattern <EventArgs>(cbString, "CheckedChanged") .ObserveOn(System.Threading.SynchronizationContext.Current) .Subscribe(evt => { txtString.Enabled = cbString.Checked; if (!cbString.Checked) { txtString.Text = string.Empty; } })); container.Add( Observable.FromEventPattern <EventArgs>(cbHeaders, "CheckedChanged") .ObserveOn(System.Threading.SynchronizationContext.Current) .Subscribe(evt => { txtHeaders.Enabled = cbHeaders.Checked; if (!cbHeaders.Checked) { txtHeaders.Text = string.Empty; } })); container.Add( Observable.FromEventPattern <CancelEventArgs>(this, "HelpButtonClicked") .ObserveOn(System.Threading.SynchronizationContext.Current) .Subscribe(EnvironmentVariableTarget => { feature.ShowHelp(); })); }
public FeatureTaskList(CachingFeature owner) { _owner = owner; }
public CachingSettingsDialog(IServiceProvider serviceProvider, ConfigurationElement element, CachingFeature feature) : base(serviceProvider) { InitializeComponent(); cbUser.Checked = (bool)element["enabled"]; cbKernel.Checked = (bool)element["enableKernelCache"]; txtSize.Text = element["maxResponseSize"].ToString(); var limit = (uint)element["maxCacheSize"]; cbLimit.Checked = limit != 0; if (cbLimit.Checked) { txtLimit.Text = limit.ToString(); } var container = new CompositeDisposable(); FormClosed += (sender, args) => container.Dispose(); container.Add( Observable.FromEventPattern <EventArgs>(btnOK, "Click") .Subscribe(evt => { element["enableKernelCache"] = cbKernel.Checked; element["enabled"] = cbUser.Checked; element["maxResponseSize"] = uint.Parse(txtSize.Text); if (!cbLimit.Checked) { element["maxCacheSize"] = 0U; } else { element["maxCacheSize"] = uint.Parse(txtLimit.Text); } DialogResult = DialogResult.OK; })); container.Add( Observable.FromEventPattern <CancelEventArgs>(this, "HelpButtonClicked") .ObserveOn(System.Threading.SynchronizationContext.Current) .Subscribe(EnvironmentVariableTarget => { feature.ShowHelp(); })); }