示例#1
0
 public void Initialize()
 {
     _quote = QuoteModel.Create(null);
     _quote.SetLoanProviders(
         new List <LoanProvider> {
         new LoanProvider {
             Lender = "Bob", Rate = 0.075D, Available = 640
         },
         new LoanProvider {
             Lender = "Jane", Rate = 0.069D, Available = 480
         },
         new LoanProvider {
             Lender = "Fred", Rate = 0.071D, Available = 520
         },
         new LoanProvider {
             Lender = "Mary", Rate = 0.104D, Available = 170
         },
         new LoanProvider {
             Lender = "John", Rate = 0.081D, Available = 320
         },
         new LoanProvider {
             Lender = "Dave", Rate = 0.074D, Available = 140
         },
         new LoanProvider {
             Lender = "Angela", Rate = 0.071D, Available = 60
         },
     }
         );
 }
示例#2
0
        public override void HandleRequest(QuoteModel quote)
        {
            if (!_fileReader.DoesFileExist(quote.InputModel.FileName))
            {
                quote.SetErrorMessage(FILE_DOES_NOT_EXIST);
                return;
            }

            TextReader reader = TextReader.Null;

            try
            {
                reader = _fileReader.GetTextReader(quote.InputModel.FileName);
                quote.SetLoanProviders(_fileReader.ReadLoanProviders(reader));
                if (quote.LoanProviders.Count == 0)
                {
                    quote.SetErrorMessage(WRONG_FORMAT_OR_EMPTY);
                    return;
                }
            }
            catch (Exception e)
            {
                quote.SetErrorMessage($"{EXCEPTION_HAPPENED} {e.Message}");
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                    reader.Dispose();
                }
            }

            if (quote.ValidationResult.IsValid)
            {
                successor.HandleRequest(quote);
            }
        }