public PerfmonOptionsDefinitionAction(IXenConnection connection, PerfmonOptionsDefinition perfmonOptions)
     : base(connection, Messages.ACTION_CHANGE_EMAIL_OPTIONS)
 {
     this.perfmonOptions = perfmonOptions;
     pool = Helpers.GetPoolOfOne(connection);
     this.Description = string.Format(Messages.ACTION_CHANGING_EMAIL_OPTIONS_FOR, pool);
 }
        public AsyncAction SaveSettings()
        {
            PerfmonOptionsDefinition perfmonOptions = null; // a null value will clear the definitions
            if (EmailNotificationCheckBox.Checked)
            {
                string smtpMailHub = SmtpServerAddrTextBox.Text + ":" + SmtpServerPortTextBox.Text;
                perfmonOptions = new PerfmonOptionsDefinition(smtpMailHub, EmailAddressTextBox.Text);
            }

            return new PerfmonOptionsDefinitionAction(_XenModelObject.Connection, perfmonOptions, true);
        }
        public void Repopulate()
        {
            if (_XenModelObject == null)
                return;
            try
            {
                _PerfmonOptions = PerfmonOptionsDefinition.GetPerfmonOptionsDefinitions(_XenModelObject);
                if (_PerfmonOptions != null)
                {
                    EmailNotificationCheckBox.Checked = true;
                    EmailAddressTextBox.Text = _PerfmonOptions.MailDestination;
                    SmtpServerAddrTextBox.Text = PerfmonOptionsDefinition.GetSmtpServerAddress(_PerfmonOptions.MailHub);
                    SmtpServerPortTextBox.Text = PerfmonOptionsDefinition.GetSmtpPort(_PerfmonOptions.MailHub);
                }

            }
            catch { }
        } // Repopulate()