internal static IdentityImpl GetInstance([CallerMemberName] string callerName = "")
        {
            var instance = new IdentityImpl();

            InstanceFactory(ref instance, callerName);
            return(instance);
        }
Exemple #2
0
 public void ActivateUser(string activationTicket, Action <ActivationResult> completeAction)
 {
     if (completeAction == null)
     {
         throw new ArgumentNullException("completeAction");
     }
     try
     {
         SecurityServiceClient svc = new SecurityServiceClient();
         svc.ActivateUserCompleted += (sender, e) =>
         {
             ActivationResult result = null;
             if (e.Error != null)
             {
                 result = new ActivationResult(null, false, ErrorStrings.GenericServerErrorMessage);
             }
             else
             {
                 if (e.Result.Status == ActivationUserStatus.Success)
                 {
                     result          = new ActivationResult(e.Result.UserName);
                     User            = new IdentityImpl(e.Result.UserName);
                     IsAuthenticated = true;
                 }
                 else if (e.Result.Status == ActivationUserStatus.AlreadyActivated)
                 {
                     result = new ActivationResult(null, false, string.Format(ErrorStrings.UserAlreadyActivatedMessage, e.Result.UserName));
                 }
                 else if (e.Result.Status == ActivationUserStatus.UserNotFound)
                 {
                     result = new ActivationResult(null, false, ErrorStrings.ActivationFailed_InvalidTicket);
                 }
                 else
                 {
                     result = new ActivationResult(null, false, ErrorStrings.ActivationFailed_ServerError);
                 }
             }
             completeAction(result);
         };
         svc.ActivateUserAsync(activationTicket);
     }
     catch
     {
         completeAction(new ActivationResult(null, false, ErrorStrings.GenericErrorMessage));
         IsBusy = false;
     }
 }
Exemple #3
0
        public void SignIn(string userName, string password, bool isPersistent, Action <SignInResult> completeAction)
        {
            if (completeAction == null)
            {
                throw new ArgumentNullException("completeAction");
            }
            try
            {
                IsBusy = true;
                Status = AppStrings.SigningInMessage;
                var svc = new SecurityServiceClient();

                svc.SignInCompleted += (sender, e) =>
                {
                    var          status = e.Result;
                    SignInResult result = null;
                    if (status == SignInStaus.Success)
                    {
                        User            = new IdentityImpl(userName);
                        IsAuthenticated = true;
                        result          = new SignInResult(User);
                    }
                    else if (status == SignInStaus.WrongCredentials)
                    {
                        result = new SignInResult(null, false, ErrorStrings.InvalidCredentialsMessage);
                    }
                    else if (status == SignInStaus.Inactive)
                    {
                        result = new SignInResult(null, false, ErrorStrings.InactiveAccountMessage);
                    }
                    else
                    {
                        result = new SignInResult(null, false, ErrorStrings.GenericServerErrorMessage);
                    }
                    completeAction(result);
                    IsBusy = false;
                };
                svc.SignInAsync(userName, password, isPersistent);
            }
            catch
            {
                completeAction(new SignInResult(null, false, ErrorStrings.GenericErrorMessage));
                IsBusy = false;
            }
        }
Exemple #4
0
 public void LoadUser()
 {
     try
     {
         string signedInUser = string.Empty;
         var    svc          = new SecurityServiceClient();
         svc.IsAuthenticatedCompleted += (sneder, e) =>
         {
             if (e.Error == null)
             {
                 signedInUser = e.Result;
                 if (!string.IsNullOrEmpty(signedInUser))
                 {
                     User            = new IdentityImpl(signedInUser);
                     IsAuthenticated = true;
                 }
             }
         };
         svc.IsAuthenticatedAsync();
     }
     catch
     {
     }
 }
 static partial void InstanceFactory(ref IdentityImpl instance, [CallerMemberName] string callerName = "");