Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,6 @@ public async Task<EmailServiceProxyResponse> SendEmail(Guid messageId,
Boolean isHtml,
List<EmailAttachment> attachments,
CancellationToken cancellationToken) {
EmailServiceProxyResponse response = null;

// Translate the request message
Smtp2GoSendEmailRequest apiRequest = new()
{
Expand Down Expand Up @@ -96,25 +94,21 @@ public async Task<EmailServiceProxyResponse> SendEmail(Guid messageId,
if (httpResponse.IsSuccessStatusCode){
apiResponse = JsonConvert.DeserializeObject<Smtp2GoSendEmailResponse>(await httpResponse.Content.ReadAsStringAsync(cancellationToken));
}
else{
apiResponse = new Smtp2GoSendEmailResponse();
apiResponse.Data = new Smtp2GoSendEmailResponseData();
apiResponse.Data.Error = httpResponse.StatusCode.ToString();
apiResponse.Data.ErrorCode = ((Int32)httpResponse.StatusCode).ToString();
else {
apiResponse = new Smtp2GoSendEmailResponse { Data = new Smtp2GoSendEmailResponseData { Error = httpResponse.StatusCode.ToString(), ErrorCode = ((Int32)httpResponse.StatusCode).ToString() } };
}

Logger.LogDebug($"Response Message Received from Email Provider [SMTP2Go] {JsonConvert.SerializeObject(apiResponse)}");

// Translate the Response
response = new EmailServiceProxyResponse
return new EmailServiceProxyResponse
{
ApiCallSuccessful = httpResponse.IsSuccessStatusCode && String.IsNullOrEmpty(apiResponse.Data.ErrorCode),
EmailIdentifier = apiResponse.Data.EmailId,
Error = apiResponse.Data.Error,
ErrorCode = apiResponse.Data.ErrorCode,
RequestIdentifier = apiResponse.RequestId
};
return response;
}

private String ConvertFileType(FileType emailAttachmentFileType)
Expand All @@ -133,8 +127,6 @@ public async Task<MessageStatusResponse> GetMessageStatus(String providerReferen
DateTime endDate,
CancellationToken cancellationToken)
{
MessageStatusResponse response = null;

Smtp2GoEmailSearchRequest apiRequest = new()
{
ApiKey = ConfigurationReader.GetValue("SMTP2GoAPIKey"),
Expand Down Expand Up @@ -166,50 +158,31 @@ public async Task<MessageStatusResponse> GetMessageStatus(String providerReferen
Logger.LogDebug($"Response Message Received from Email Provider [SMTP2Go] {JsonConvert.SerializeObject(apiResponse)}");

// Translate the Response
response = new MessageStatusResponse
return new MessageStatusResponse
{
ApiStatusCode = httpResponse.StatusCode,
MessageStatus = this.TranslateMessageStatus(apiResponse.Data.EmailDetails.Single().Status),
ProviderStatusDescription = apiResponse.Data.EmailDetails.Single().Status,
Timestamp = apiResponse.Data.EmailDetails.Single().EmailStatusDate
};

return response;
}

private MessageStatus TranslateMessageStatus(String status)
{
MessageStatus result;
switch (status)
{
case "failed":
case "deferred":
result = MessageStatus.Failed;
break;
case "hardbounce":
case "refused":
case "softbounce":
case "returned":
result = MessageStatus.Bounced;
break;
case "delivered":
case "ok":
case "sent":
result = MessageStatus.Delivered;
break;
case "rejected":
result = MessageStatus.Rejected;
break;
case "complained":
case "spam":
result = MessageStatus.Spam;
break;
default:
result = MessageStatus.Unknown;
break;
}

return result;
private MessageStatus TranslateMessageStatus(String status) {
return status switch {
"failed" => MessageStatus.Failed,
"deferred" => MessageStatus.Failed,
"hardbounce" => MessageStatus.Bounced,
"refused" => MessageStatus.Bounced,
"softbounce" => MessageStatus.Bounced,
"returned" => MessageStatus.Bounced,
"delivered" => MessageStatus.Delivered,
"ok" => MessageStatus.Delivered,
"sent" => MessageStatus.Delivered,
"rejected" => MessageStatus.Rejected,
"complained" => MessageStatus.Spam,
"spam" => MessageStatus.Spam,
_ => MessageStatus.Unknown,
};
}

#endregion
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,31 +129,15 @@ public async Task<MessageStatusResponse> GetMessageStatus(String providerReferen
/// <returns></returns>
private MessageStatus TranslateMessageStatus(String status)
{
MessageStatus result = MessageStatus.NotSet;
switch (status)
{
case "UNDELIVERABLE":
result = MessageStatus.Undeliverable;
break;
case "DELIVERED":
case "SENT":
result = MessageStatus.Delivered;
break;
case "REJECTED":
result = MessageStatus.Rejected;
break;
case "EXPIRED":
result = MessageStatus.Expired;
break;
case "INCOMING":
result = MessageStatus.Incoming;
break;
default:
result = MessageStatus.Rejected;
break;
}

return result;
return status switch {
"UNDELIVERABLE" => MessageStatus.Undeliverable,
"DELIVERED"=> MessageStatus.Delivered,
"SENT" => MessageStatus.Delivered,
"REJECTED" => MessageStatus.Rejected,
"EXPIRED" => MessageStatus.Expired,
"INCOMING" => MessageStatus.Incoming,
_ => MessageStatus.Rejected
};
}

/// <summary>
Expand Down
114 changes: 0 additions & 114 deletions MessagingService/Common/ClaimsHelper.cs

This file was deleted.

6 changes: 2 additions & 4 deletions MessagingService/Common/Extensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,7 @@ public static void PreWarm(this IApplicationBuilder applicationBuilder)
IConfigurationSection subscriptionConfigSection = Startup.Configuration.GetSection("AppSettings:SubscriptionConfiguration");
SubscriptionWorkersRoot subscriptionWorkersRoot = new();
subscriptionConfigSection.Bind(subscriptionWorkersRoot);

String eventStoreConnectionString = ConfigurationReader.GetValue("EventStoreSettings", "ConnectionString");


IDomainEventHandlerResolver mainEventHandlerResolver = Startup.Container.GetInstance<IDomainEventHandlerResolver>("Main");

Dictionary<String, IDomainEventHandlerResolver> eventHandlerResolvers = new() {
Expand All @@ -66,7 +64,7 @@ public static void PreWarm(this IApplicationBuilder applicationBuilder)
String connectionString = Startup.Configuration.GetValue<String>("EventStoreSettings:ConnectionString");
EventStoreClientSettings eventStoreConnectionSettings = EventStoreClientSettings.Create(connectionString);
applicationBuilder.ConfigureSubscriptionService(subscriptionWorkersRoot,
eventStoreConnectionString,
connectionString,
eventHandlerResolvers,
Extensions.log,
subscriptionRepositoryResolver).Wait(CancellationToken.None);
Expand Down
3 changes: 2 additions & 1 deletion MessagingService/Controllers/EmailController.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using Shared.Results;
using Shared.General;
using Shared.Results;
using Shared.Results.Web;
using SimpleResults;
using SendEmailRequestDTO = MessagingService.DataTransferObjects.SendEmailRequest;
Expand Down
1 change: 1 addition & 0 deletions MessagingService/Controllers/SMSController.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using MessagingService.BusinessLogic.Requests;
using Shared.General;
using Shared.Results;
using Shared.Results.Web;
using SimpleResults;
Expand Down
Loading