Пример #1
0
        public async Task <object> ExecuteAsync(IMessage message)
        {
            var loggedMessage = message;

            if (message is IAsyncCall asyncCall)
            {
                logger.Log(new LogAsyncCall()
                {
                    MemberName = asyncCall.GetMemberName()
                });
                loggedMessage = asyncCall.GetMessage();
            }

            if (message is IForm form)
            {
                logger.Log(new LogSubmit()
                {
                    MemberName = form.GetMemberName()
                });
                loggedMessage = form.GetCommand();
            }


            logger.Log(new LogMessageBus()
            {
                Message = loggedMessage
            });

            var response = await messageBus.ExecuteAsync(message);

            return(response);
        }
        public async Task Send(IMyMailMessage mailMessage)
        {
            logger.Log(new LogEmailSent()
            {
                MailMessage = mailMessage
            });
            await Task.CompletedTask;

            NewMessages.Add(mailMessage);
        }
Пример #3
0
        public BrowserFluent <T> ThenFollow <T>(Func <TPostResponse, IMessage <T> > getMessage) where T : IPageBase
        {
            // TODO difference TestBrowser / SeleniumBrowser
            if (browser is TestBrowser)
            {
                var message = getMessage(postResponse);

                logger.Log(new LogSubmitRedirect()
                {
                    PageQuery = (IPageQuery)message,
                });

                var page = browser.SubmitRedirect(message).Result;
                return(factory.Create <BrowserFluent <T> >().SetPageAndId(page));
            }
            else
            {
                var page = browser.SubmitRedirect((IMessage <T>)null).Result;
                return(factory.Create <BrowserFluent <T> >().SetPageAndId(page));
            }
        }
Пример #4
0
 public async Task <bool> ExistsAsync(Type entityType, Guid id)
 {
     logger.Log(new LogRepo(LogRepoOperation.Exists, entityType));
     return(await repo.ExistsAsync(entityType, id));
 }