Exemple #1
0
        public async Task ResendConfirmIdentityAsync(ResendConfirmIdentityAdto resendConfirmIdentityAdto)
        {
            using (ITransaction transaction = _transactionManager.Create())
            {
                try
                {
                    Identity identity = await _identityCommandRepository.GetByIdAsync(resendConfirmIdentityAdto.IdentityId);

                    if (identity == null)
                    {
                        throw new BusinessApplicationException(ExceptionType.Unauthorized, "No identity exists");
                    }

                    await _resendConfirmIdentityCommand.ExecuteAsync(identity);

                    await _identityCommandRepository.UpdateAsync(identity);

                    transaction.Commit();
                }
                catch (IdentityAlreadyConfirmedDomainException)
                {
                    throw new BusinessApplicationException(ExceptionType.BadRequest, ErrorCodes.IdentityAlreadyConfirmed, "Identity already confirmed");
                }
            }
        }
 public Task ResendConfirmIdentityAsync(ResendConfirmIdentityAdto resendConfirmIdentityAdto)
 {
     return(_securityApplicationService.SecureAsync(() => _identityApplicationService.ResendConfirmIdentityAsync(resendConfirmIdentityAdto),
                                                    IdentityAuthorisationContext.Create(resendConfirmIdentityAdto.IdentityId, AuthorisationAction.Update)));
 }