public ServerManagementRegisterConfirm(Controller controller, ServerManagementAccount serverManagementAccount,
                                               string registrationIdentifier, string clientToken)
        {
            InitializeComponent();

            Controller = controller;
            _serverManagementAccount = serverManagementAccount;
            _registrationIdentifier  = registrationIdentifier;
            _clientToken             = clientToken;
        }
        public ServerManagementRegisterConfirm(Controller controller, ServerManagementAccount serverManagementAccount, 
            string registrationIdentifier, string clientToken)
        {
            InitializeComponent();

            Controller = controller;
            _serverManagementAccount = serverManagementAccount;
            _registrationIdentifier = registrationIdentifier;
            _clientToken = clientToken;
        }
Esempio n. 3
0
        public bool RegisterWithServerManagementComplete(ServerManagementAccount serverManagementAccount,
            string registrationIdentifier, string clientToken, string emailToken, 
            out string serverRegistrationIdentifier, out string serverClientToken)
        {
            serverRegistrationIdentifier = "";
            serverClientToken = "";

            var apiClient = new ApiClient(serverManagementAccount.HttpsEnabled, serverManagementAccount.Host, 
                serverManagementAccount.Port, serverManagementAccount.ApiVersion);

            var request = new RegisterComplete
            {
                RegistrationIdentifier = registrationIdentifier,
                ClientToken = clientToken, 
                EmailToken = emailToken
            };

            RegisterComplete.ResponseParams response;
            try
            {
                response = request.GetResponse(apiClient);
            }
            catch (NotFoundException e)
            {
                Logger.Warning("Incorrect confirmation code: " + e.Message);
                //MessageBox.Show(@"The code appears to be incorrect.");
                return false;
            }
            catch (RequestException e)
            {
                //MessageBox.Show(@"An unexpected error occured contacting the server.");
                Logger.Warning("Unexpected error contacting management API: " + e.Message);
                return false;
            }

            serverManagementAccount.UserIdentifier = response.UserIdentifier;
            serverManagementAccount.ApiKey = response.ApiKey;

            serverRegistrationIdentifier = response.ServerRegistrationIdentfier;
            serverClientToken = response.ServerClientToken;

            return true;
        }
Esempio n. 4
0
        public bool RegisterWithServerManagement()
        {
            var serverManagementAccount = new ServerManagementAccount
            {
                HttpsEnabled = Config.ManagementHttps,
                Host = Config.ManagementHost,
                Port = Config.ManagementPort,
                ApiVersion = Config.ManagementApiVersion,
                Label = Config.ManagementLabel,
                Subscribed = false,
                InTrial = true,
                TrialEndsAt = DateTime.Today.AddDays(Config.TrialLengthDays)
            };

            using (var form = new ServerManagementRegister(this))
            {
                form.ShowDialog();
                if (!form.Success)
                    return false;
                
                using (var formConfirm = new ServerManagementRegisterConfirm(this, serverManagementAccount, 
                    form.RegistrationIdentifier, form.ClientToken))
                {
                    formConfirm.ShowDialog();
                    if (!formConfirm.Success)
                        return false;

                    serverManagementAccount.EmailAddress = form.EmailAddress;
                    
                    var newManagementAccountId = Model.ServerManagementAccounts.Create(serverManagementAccount);

                    _syncManagement = new SyncManagement(this, newManagementAccountId);
                    _syncManagement.Start();

                    var registrationIdentifier = formConfirm.ServerRegistrationIdentifier;
                    var clientToken = formConfirm.ServerClientToken;
                    var recoveryPasswordPlaintext = form.RecoveryPasswordPlainText;

                    Task.Run(() => RegisterServerComplete(registrationIdentifier,
                        clientToken, recoveryPasswordPlaintext));
                }
            }
            
            return true;
        }