Beispiel #1
0
        public static Conversation ConversationBuilder(Envelope e)
        {
            Conversation conv = null;

            switch (e.Contents)
            {
            case CreatePortfolioRequestMessage m:
                conv = new CreatePortfoliolResponseConversation(m.ConversationID);
                conv.SetInitialState(new CreatePortfolioReceiveState(e, conv));
                break;

            case GetPortfolioRequest m:
                conv = HandleGetPortfolio(e);
                break;

            case StockPriceUpdate m:
                conv = HandleStockPriceUpdate(e);
                break;

            case TransactionRequestMessage m:
                conv = new RespondTransactionConversation(e);
                conv.SetInitialState(new RespondTransaction_InitialState(conv, e));
                break;
            }
            return(conv);
        }
Beispiel #2
0
        public Conversation ConversationBuilder(Envelope env)
        {
            Conversation conv = null;

            switch (env.Contents)
            {
            case TransactionRequestMessage m:
                conv = new RespondTransactionConversation(env);

                //setup response message as mock
                mock = new Mock <RespondTransaction_InitialState>(conv, env)
                {
                    CallBase = true
                };
                conv.SetInitialState(mock.Object as RespondTransaction_InitialState);

                break;
            }

            return(conv);
        }