Пример #1
0
 public void Send(string lookupValue, string languageCode, Action <ISendPasswordRecoveryResult> callback)
 {
     try
     {
         guestControllerClient.RecoverPassword(new RecoverRequest
         {
             lookupValue = lookupValue
         }, languageCode, delegate(GuestControllerResult <NotificationResponse> r)
         {
             if (!r.Success)
             {
                 callback(new SendPasswordRecoveryResult(success: false));
             }
             else
             {
                 ISendPasswordRecoveryResult recoverPasswordResult = GuestControllerErrorParser.GetRecoverPasswordResult(r.Response.error);
                 if (recoverPasswordResult != null)
                 {
                     callback(recoverPasswordResult);
                 }
                 else
                 {
                     callback(new SendPasswordRecoveryResult(r.Response.data != null));
                 }
             }
         });
     }
     catch (Exception ex)
     {
         logger.Critical("Unhandled exception: " + ex);
         callback(new SendPasswordRecoveryResult(success: false));
     }
 }
 private void onPasswordRecoveryFailed(ISendPasswordRecoveryResult result)
 {
     if (result is ISendPasswordRecoveryRateLimitedResult)
     {
         string type   = "";
         string format = "Account.General.Error.RateLimited";
         Service.Get <EventDispatcher>().DispatchEvent(new ApplicationService.Error(type, format));
     }
     dispatchRecoveryFailed();
 }