public async Task <IActionResult> GetRolesAsync(string filter = null, int start = 0, int count = 100) { var meta = await GetMetadataAsync(); if (!meta.RoleMetadata.SupportsListing) { return(MethodNotAllowed()); } var result = await service.QueryRolesAsync(filter, start, count); if (result.IsSuccess) { try { return(Ok(new RoleQueryResultResource(result.Result, Url, meta.RoleMetadata))); } catch (Exception exp) { throw new ArgumentNullException(exp.ToString()); } } return(BadRequest(result.ToError())); }
public async Task <IHttpActionResult> GetRolesAsync(string filter = null, int start = 0, int count = 100) { var meta = await GetMetadataAsync(); if (!meta.RoleMetadata.SupportsListing) { return(MethodNotAllowed()); } var result = await idmService.QueryRolesAsync(filter, start, count); if (result.IsSuccess) { var resource = new RoleQueryResultResource(result.Result, Url, meta.RoleMetadata); return(Ok(resource)); } return(BadRequest(result.ToError())); }
public async Task <IActionResult> GetUserAsync(string subject) { if (IsNullOrWhiteSpace(subject)) { ModelState["subject.String"].Errors.Clear(); ModelState.AddModelError("", Messages.SubjectRequired); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var result = await service.GetUserAsync(subject); if (result.IsSuccess) { if (result.Result == null) { return(NotFound()); } var meta = await GetMetadataAsync(); RoleSummary[] roles = null; if (!IsNullOrWhiteSpace(meta.RoleMetadata.RoleClaimType)) { var roleResult = await service.QueryRolesAsync(null, -1, -1); if (!roleResult.IsSuccess) { return(BadRequest(roleResult.Errors)); } roles = roleResult.Result.Items.ToArray(); } return(Ok(new UserDetailResource(result.Result, Url, meta, roles))); } return(BadRequest(result.ToError())); }
public Task <IdentityManagerResult <QueryResult <RoleSummary> > > QueryRolesAsync(string filter, int start, int count) { return(inner.QueryRolesAsync(filter, start, count)); }