コード例 #1
0
        public async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)]
            [RequestBodyType(typeof(GetGroupEmailConfigurationRequest), "get group email configuration")] GetGroupEmailConfigurationRequest req,
            CancellationToken cancellationToken)
        {
            try
            {
                GetGroupEmailConfigurationResponse response = await _mediator.Send(req, cancellationToken);

                return(new OkObjectResult(ResponseWrapper <GetGroupEmailConfigurationResponse, GroupServiceErrorCode> .CreateSuccessfulResponse(response)));
            }
            catch (Exception ex)
            {
                _logger.LogErrorAndNotifyNewRelic($"Unhandled error in GetGroupEmailConfiguration", ex);
                return(new ObjectResult(ResponseWrapper <GetGroupEmailConfigurationResponse, GroupServiceErrorCode> .CreateUnsuccessfulResponse(GroupServiceErrorCode.InternalServerError, "Internal Error"))
                {
                    StatusCode = StatusCodes.Status500InternalServerError
                });
            }
        }
コード例 #2
0
        public async Task <List <KeyValuePair <string, string> > > GetGroupEmailConfiguration(int groupId, CommunicationJobTypes communicationJobType)
        {
            GetGroupEmailConfigurationRequest request = new GetGroupEmailConfigurationRequest()
            {
                GroupId = groupId, CommunicationJob = new CommunicationJob()
                {
                    CommunicationJobType = communicationJobType
                }
            };
            string        json = JsonConvert.SerializeObject(request);
            StringContent data = new StringContent(json, Encoding.UTF8, "application/json");

            using (HttpResponseMessage response = await _httpClientWrapper.PostAsync(HttpClientConfigName.GroupService, "/api/GetGroupEmailConfiguration", data, CancellationToken.None).ConfigureAwait(false))
            {
                string jsonResponse = await response.Content.ReadAsStringAsync();

                var getJobsResponse = JsonConvert.DeserializeObject <ResponseWrapper <GetGroupEmailConfigurationResponse, GroupServiceErrorCode> >(jsonResponse);
                if (getJobsResponse.HasContent && getJobsResponse.IsSuccessful)
                {
                    return(getJobsResponse.Content.EmailConfigurations);
                }
                return(null);
            }
        }