public static MailSendResult ToMailSendResult(this MailAdapterResult result) { switch (result) { case MailAdapterResult.Ok: return(MailSendResult.Sended); case MailAdapterResult.InfrastructuralError: case MailAdapterResult.NotInfrastructuralError: default: return(MailSendResult.NotSended); } }
private async Task SendCallbackToCallerActorAsync(MailData mailData, MailAdapterResult sendResult, CancellationToken cancellationToken) { if (mailData.CallBack != null) { try { var callbackProxy = this.actorFactory.Create <ICallBackMailService>(new ActorId(mailData.CallBack.ActorId), new Uri(mailData.CallBack.ServiceUri)); await callbackProxy.MailSendCompletedAsync(mailData.Id, sendResult.ToMailSendResult(), cancellationToken); } catch { } } }