public async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] [RequestBodyType(typeof(GetChildGroupsRequest), "get child group")] GetChildGroupsRequest req, CancellationToken cancellationToken) { try { if (req.IsValid(out var validationResults)) { GetChildGroupsResponse response = await _mediator.Send(req, cancellationToken); return(new OkObjectResult(ResponseWrapper <GetChildGroupsResponse, GroupServiceErrorCode> .CreateSuccessfulResponse(response))); } else { return(new ObjectResult(ResponseWrapper <GetChildGroupsResponse, GroupServiceErrorCode> .CreateUnsuccessfulResponse(GroupServiceErrorCode.ValidationError, validationResults)) { StatusCode = 422 }); } } catch (Exception ex) { _logger.LogErrorAndNotifyNewRelic($"Unhandled error in GetChildGroups", ex); return(new ObjectResult(ResponseWrapper <GetChildGroupsResponse, GroupServiceErrorCode> .CreateUnsuccessfulResponse(GroupServiceErrorCode.InternalServerError, "Internal Error")) { StatusCode = StatusCodes.Status500InternalServerError }); } }
public GroupInfo[] GetChildGroups(Identifier orgUnitId) { GetChildGroupsRequest request = new GetChildGroupsRequest() { OrgUnitId = orgUnitId }; GetGroupsResponse response = CallWebService < IOrgUnitManagementServicev1_0, GetChildGroupsRequest, GetGroupsResponse>( m_service1_0, request, (s, q) => s.GetChildGroups(q)); return(response.ChildOrgUnits); }