public async Task <IActionResult> Get() { IdentityAdto identityAdto = await _identityApplicationService.GetAsync(new GetIdentityAdto { Id = _currentIdentityProvider.Id }); switch (identityAdto) { case PasswordIdentityAdto passwordIdentityAdto: return(Ok(_resourceBuilder.Build(new PasswordIdentityResource { Id = passwordIdentityAdto.Id }))); case IdentityAdto defaultIdentityAdto: return(Ok(_resourceBuilder.Build(new IdentityResource { Id = defaultIdentityAdto.Id }))); default: throw new ArgumentOutOfRangeException(nameof(identityAdto)); } }
public Task <IdentityAdto> GetAsync(GetIdentityAdto getIdentityAdto) { return(_securityApplicationService.SecureAsync(() => _identityApplicationService.GetAsync(getIdentityAdto), IdentityAuthorisationContext.Create(getIdentityAdto.Id, AuthorisationAction.Get))); }