コード例 #1
0
ファイル: LoanBroker.cs プロジェクト: hass123uk/LoanBroker
        private static void HandleCreditBureauReply(CreditBureauReply creditBureauReply)
        {
            Console.WriteLine($"Received credit bureau reply regarding Cpr.Nr {creditBureauReply.CprNr}");
            LoanQuoteRequest loanRequest;

            if (_loanQuoteRequests.TryGetValue(creditBureauReply.CprNr, out loanRequest))
            {
                //Content Enriching
                var bankQuoteRequest = _messageTransformer.EnrichMessage(creditBureauReply, loanRequest);
                using (var messageGateway = new MessageGateway("host=localhost;timeout=60"))
                {
                    messageGateway.Publish(bankQuoteRequest);
                }
                Console.WriteLine($"Sent request to all banks regarding Cpr.Nr {bankQuoteRequest.CprNr}");


                _bankQuoteReplies.TryAdd(bankQuoteRequest.CprNr, new List <BankQuoteReply>());
                var timer = new Timer(Timeout_Elapsed, bankQuoteRequest, 5000, Timeout.Infinite);
            }
            else
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Customer quote request could not be found when forwarding their details to the banks!");
                Console.ResetColor();
            }
        }
コード例 #2
0
 public BankQuoteRequest EnrichMessage(CreditBureauReply creditBureauReply, LoanQuoteRequest loanRequest)
 {
     return(new BankQuoteRequest
     {
         CprNr = creditBureauReply.CprNr,
         CreditScore = creditBureauReply.CreditScore,
         HistoryLength = creditBureauReply.HistoryLength,
         LoanAmount = loanRequest.LoanAmount,
         LoanTerm = loanRequest.LoanTerm
     });
 }