public BankAndBankInLoader(ISpreadsheetRepoFactory spreadsheet_repo_factory) { var expected_income_file_io = new FileIO <ExpectedIncomeRecord>(spreadsheet_repo_factory); _expected_income_csv_file = new CSVFile <ExpectedIncomeRecord>(expected_income_file_io); _expected_income_file = new ExpectedIncomeFile(_expected_income_csv_file); }
public BankAndBankInMatcher( IInputOutput input_output, ISpreadsheetRepoFactory spreadsheet_factory, IBankAndBankInLoader bank_and_bank_in_loader) { _input_output = input_output; _spreadsheet_factory = spreadsheet_factory; _bank_and_bank_in_loader = bank_and_bank_in_loader; MatchedExpectedIncomeRecords = new List <ExpectedIncomeRecord>(); }
public void Do_matching(FilePaths main_file_paths, ISpreadsheetRepoFactory spreadsheet_factory) { var loading_info = ((BankAndBankInLoader)_bank_and_bank_in_loader).Loading_info(); loading_info.File_paths = main_file_paths; var file_loader = new FileLoader(_input_output, new Clock()); ReconciliationInterface <ActualBankRecord, BankRecord> reconciliation_interface = file_loader.Load_files_and_merge_data <ActualBankRecord, BankRecord>(loading_info, spreadsheet_factory, this); reconciliation_interface?.Do_the_matching(); }
public void Do_matching(FilePaths main_file_paths, ISpreadsheetRepoFactory spreadsheet_factory) { var loading_info = new CredCard1AndCredCard1InOutLoader().Loading_info(); loading_info.File_paths = main_file_paths; var file_loader = new FileLoader(_input_output, new Clock()); ReconciliationInterface <CredCard1Record, CredCard1InOutRecord> reconciliation_interface = file_loader.Load_files_and_merge_data <CredCard1Record, CredCard1InOutRecord>(loading_info, spreadsheet_factory, this); reconciliation_interface?.Do_the_matching(); }
Load_files_and_merge_data <TThirdPartyType, TOwnedType>( DataLoadingInformation <TThirdPartyType, TOwnedType> data_loading_info, ISpreadsheetRepoFactory spreadsheet_factory, IMatcher matcher) where TThirdPartyType : ICSVRecord, new() where TOwnedType : ICSVRecord, new() { ReconciliationInterface <TThirdPartyType, TOwnedType> reconciliation_interface = null; try { // NB This is the only function the spreadsheet is used in, until the very end (Reconciliator.Finish, called from // ReconciliationInterface), when another spreadsheet instance gets created by FileIO so it can call // WriteBackToMainSpreadsheet. Between now and then, everything is done using csv files. var spreadsheet_repo = spreadsheet_factory.Create_spreadsheet_repo(); var spreadsheet = new Spreadsheet(spreadsheet_repo); BudgetingMonths budgeting_months = Recursively_ask_for_budgeting_months(spreadsheet); _input_output.Output_line("Loading data..."); var pending_file_io = new FileIO <TOwnedType>(spreadsheet_factory); var third_party_file_io = new FileIO <TThirdPartyType>(spreadsheet_factory); var owned_file_io = new FileIO <TOwnedType>(spreadsheet_factory); var pending_file = new CSVFile <TOwnedType>(pending_file_io); reconciliation_interface = Load <TThirdPartyType, TOwnedType>( spreadsheet, pending_file_io, pending_file, third_party_file_io, owned_file_io, budgeting_months, data_loading_info, matcher); } finally { spreadsheet_factory.Dispose_of_spreadsheet_repo(); } _input_output.Output_line(""); _input_output.Output_line(""); return(reconciliation_interface); }
public PathSetter(IInputOutput input_output, ISpreadsheetRepoFactory spreadsheet_factory) { _input_output = input_output; _spreadsheet_factory = spreadsheet_factory; }
public CredCard2AndCredCard2InOutMatcher(IInputOutput input_output, ISpreadsheetRepoFactory spreadsheet_factory) { _input_output = input_output; _spreadsheet_factory = spreadsheet_factory; }
private void Do_matching(ISpreadsheetRepoFactory spreadsheet_factory) { var main_file_paths = new PathSetter(_input_output, spreadsheet_factory).Set_path_and_file_names(); main_file_paths.Matcher.Do_matching(main_file_paths, spreadsheet_factory); }
public BankAndBankOutMatcher(IInputOutput input_output, ISpreadsheetRepoFactory spreadsheet_factory) { _input_output = input_output; _spreadsheet_factory = spreadsheet_factory; }
public FileIO(ISpreadsheetRepoFactory spreadsheet_factory, string file_path = "", string file_name = "") { _spreadsheet_factory = spreadsheet_factory; Set_file_paths(file_path, file_name); }