Ejemplo n.º 1
0
        private void UpdateActivation(Option <Activation, LicenseError> activation)
        {
            var oldKey = _activation.Match(a => a.Key, e => "");

            //Save only valid activation. Invalid activations might throw exceptions during saving.
            if (activation.Exists(a => a.IsLicenseStillValid()))
            {
                activation.MatchSome(a =>
                {
                    _activation = activation;
                    _licenseChecker.SaveActivation(a);
                });
            }
            //Save activation if current key is blocked
            else if (activation.Exists(a => (a.Result == Result.BLOCKED) && a.Key == oldKey))
            {
                activation.MatchSome(a =>
                {
                    _activation = activation;
                    _licenseChecker.SaveActivation(a);
                });
            }

            //Notify user
            InvokeActivationResponse(activation);

            CloseLicenseWindowEvent?.Invoke(this, new ActivationResponseEventArgs(activation));
        }
Ejemplo n.º 2
0
        private void UpdateActivation(Activation activation)
        {
            var oldActivation         = _activationHelper.Activation;
            var oldActivationWasValid = _activationHelper.IsLicenseValid;
            var resetActivation       = false;

            activation = activation ?? new Activation();
            _activationHelper.Activation = activation;

            //Save only valid activation. Invalid activations might throw exceptions during saving.
            if (_activationHelper.IsLicenseValid)
            {
                _activationHelper.SaveActivation();
            }
            //Save activation if current key is blocked
            else if ((activation.Result == Result.BLOCKED) &&
                     oldActivation.Key.Equals(activation.Key))
            {
                _activationHelper.SaveActivation();
            }
            //Reset license if the old one was valid
            else if (oldActivationWasValid)
            {
                //Do the reset after user notification
                resetActivation = true;
            }
            //set key in invalid activation to make it visible in view
            else
            {
                _activationHelper.Activation.Key = _lastActivationKey;
            }

            //Notify user
            InvokeActivationResponse();

            //Reset license if the old one was valid
            if (resetActivation)
            {
                _activationHelper.Activation = oldActivation;
            }

            CloseLicenseWindowEvent?.Invoke(this, new ActivationResponseEventArgs(_activationHelper.Activation, _activationHelper.IsLicenseValid));
        }
Ejemplo n.º 3
0
 private void RaiseCloseWindow()
 {
     CloseLicenseWindowEvent?.Invoke(this, EventArgs.Empty);
 }