public async Task <ClaimAggregate> Execute(string claimCode) { if (string.IsNullOrWhiteSpace(claimCode)) { throw new ArgumentNullException(nameof(claimCode)); } var claim = await _claimRepository.GetAsync(claimCode); if (claim == null) { throw new IdentityServerManagerException(ErrorCodes.InvalidRequestCode, ErrorDescriptions.ClaimDoesntExist); } return(await _claimRepository.GetAsync(claimCode)); }
public async Task <bool> Execute(AddClaimParameter request) { if (request == null) { throw new ArgumentNullException(nameof(request)); } if (string.IsNullOrWhiteSpace(request.Code)) { throw new ArgumentNullException(nameof(request.Code)); } if (request.IsIdentifier) { throw new IdentityServerManagerException(ErrorCodes.InvalidRequestCode, ErrorDescriptions.CannotInsertClaimIdentifier); } var claim = await _claimRepository.GetAsync(request.Code); if (claim != null) { throw new IdentityServerManagerException(ErrorCodes.InvalidRequestCode, ErrorDescriptions.ClaimExists); } return(await _claimRepository.InsertAsync(request)); }
public async Task <IList <Claim> > GetAsync(string nameId) { var claims = await _claimRepository.GetAsync(nameId); if (claims == null) { claims = new List <Claim> { }; } if (claims.Where(x => x.Type == ClaimTypes.NameIdentifier).FirstOrDefault() == null) { claims.Add(new Claim(ClaimTypes.NameIdentifier, nameId)); } return(claims); }
public async Task <bool> Handle(UpdateClaimCommand command, CancellationToken cancellationToken) { var claimToUpdate = await _claimRepository.GetAsync(command.ClaimId); if (claimToUpdate == null) { return(false); } claimToUpdate.UserId = command.UserId; claimToUpdate.Description = command.Description; claimToUpdate.DamagedItem = command.DamagedItem; claimToUpdate.Incidence = command.Incidence; claimToUpdate.Status = (ClaimStatus)Enum.Parse(typeof(ClaimStatus), command.Status); claimToUpdate.Date = command.Date; claimToUpdate.Street = command.Street; claimToUpdate.City = command.City; claimToUpdate.Country = command.Country; return(await _claimRepository.UpdateAsync(claimToUpdate));; }
public async Task <ClaimDTO> Handle(GetClaimQuery query, CancellationToken cancellationToken) { var claim = await _claimRepository.GetAsync(query.ClaimId); if (claim == null) { return(null); } return(new ClaimDTO { ClaimId = claim.ClaimId, Date = claim.Date, UserId = claim.UserId, Description = claim.Description, Incidence = claim.Incidence, DamagedItem = claim.DamagedItem, Status = nameof(claim.Status), Street = claim.Street, City = claim.City, Country = claim.Country }); }