private void HandleAutoconfigPage3Select()
        {
            switch (contentPage3.Outcome)
            {
            case AutoconfigPage3Select.AutoconfigPage3Outcome.WrapperDecides:
                EmailProvider provider = _mechanismSuccess.ClientConfig.EmailProvider;
                _chosenTemplate = AutoconfigurationHelper.MapMechanismResponse(_mechanismSuccess, _emailAddress, _password, contentPage3.IncomingPreference);
                if (ConfigChosen != null)
                {
                    ConfigChosen(this, new EventArgs());
                }
                break;

            case AutoconfigPage3Select.AutoconfigPage3Outcome.UserDecides:
                ServerChoiceForm form = new ServerChoiceForm();

                form.EmailProvider = _mechanismSuccess.ClientConfig.EmailProvider;

                if (form.ShowDialog(this).Equals(DialogResult.OK))
                {
                    _chosenTemplate = AutoconfigurationHelper.MapManualChoice(form.EmailProvider, _emailAddress, _password);

                    if (ConfigChosen != null)
                    {
                        ConfigChosen(this, new EventArgs());
                    }
                }
                break;
            }
        }
        private void AutoConfig_Search_Thread(object obj)
        {
            try
            {
                RequestType requestType = ConfigHelper.ParseEnumString <RequestType>(obj as string);

                MechanismResponse response = IspDbHandler.GetAutoconfig(_emailAddress, requestType);

                if (response.IsGuess)
                {
                    //Excludes servers that fail and determines socket type for Plain/TLS ports
                    EmailProvider provider = response.ClientConfig.EmailProvider;
                    AutoconfigurationHelper.TestAllEmailServers(provider, 5000);

                    if (provider.IncomingServers.Count == 0 ||
                        provider.OutgoingServers.Count == 0)
                    {
                        response = new MechanismResponse()
                        {
                            ResponseType = MechanismResponseType.NotFound
                        };
                    }
                }

                this.Invoke(
                    new CallBackEvent(CallBackMechanismResponse),
                    this,
                    response,
                    new Action <MechanismResponse>(resp =>
                {
                    if (resp != null && resp.IsSuccess)
                    {
                        _mechanismSuccess = resp;
                        contentPage2.Success();
                    }
                    else
                    {
                        contentPage2.Failed();
                    }
                    cmdNext.Enabled = true;
                    cmdNext.Focus();
                }));
            }
            catch
            { }
        }
Exemple #3
0
        public void HandleResponse(MechanismResponse mozillaResponse, string[] args)
        {
            if (!_abortRequest)
            {
                if (mozillaResponse != null && mozillaResponse.IsSuccess)
                {
                    EmailProvider provider = mozillaResponse.ClientConfig.EmailProvider;
                    _chosenTemplate = AutoconfigurationHelper.MapMechanismResponse(mozillaResponse, args[0], args[1], ConfigHelper.ParseEnumString <ServerType>(args[2]));
                }
                else
                {
                    _chosenTemplate = null;
                }

                this.Invoke(_autoConfigFinishEvent);
            }
        }