public CsvOnDiskStatementModelRepositoryV1(
            [NotNull] BankImportUtilities importUtilities,
            [NotNull] ILogger logger,
            [NotNull] IDtoMapper<TransactionSetDto, StatementModel> mapper,
            [NotNull] IReaderWriterSelector readerWriterSelector)
        {
            if (importUtilities == null)
            {
                throw new ArgumentNullException(nameof(importUtilities));
            }

            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }

            if (mapper == null)
            {
                throw new ArgumentNullException(nameof(mapper));
            }
            if (readerWriterSelector == null) throw new ArgumentNullException(nameof(readerWriterSelector));

            this.importUtilities = importUtilities;
            this.logger = logger;
            this.mapper = mapper;
            this.readerWriterSelector = readerWriterSelector;
        }
        public XamlOnDiskLedgerBookRepository(
            [NotNull] IDtoMapper<LedgerBookDto, LedgerBook> mapper,
            [NotNull] BankImportUtilities importUtilities,
            [NotNull] ILedgerBookFactory ledgerBookFactory,
            [NotNull] IReaderWriterSelector readerWriterSelector)
        {
            if (mapper == null)
            {
                throw new ArgumentNullException(nameof(mapper));
            }

            if (importUtilities == null)
            {
                throw new ArgumentNullException(nameof(importUtilities));
            }

            if (ledgerBookFactory == null)
            {
                throw new ArgumentNullException(nameof(ledgerBookFactory));
            }
            if (readerWriterSelector == null) throw new ArgumentNullException(nameof(readerWriterSelector));

            this.mapper = mapper;
            this.importUtilities = importUtilities;
            this.ledgerBookFactory = ledgerBookFactory;
            this.readerWriterSelector = readerWriterSelector;
        }
Beispiel #3
0
        public CsvOnDiskStatementModelRepositoryV1(
            [NotNull] BankImportUtilities importUtilities,
            [NotNull] ILogger logger,
            [NotNull] IDtoMapper <TransactionSetDto, StatementModel> mapper,
            [NotNull] IReaderWriterSelector readerWriterSelector)
        {
            if (importUtilities == null)
            {
                throw new ArgumentNullException(nameof(importUtilities));
            }

            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }

            if (mapper == null)
            {
                throw new ArgumentNullException(nameof(mapper));
            }
            if (readerWriterSelector == null)
            {
                throw new ArgumentNullException(nameof(readerWriterSelector));
            }

            this.importUtilities      = importUtilities;
            this.logger               = logger;
            this.mapper               = mapper;
            this.readerWriterSelector = readerWriterSelector;
        }
 public CsvOnDiskStatementModelRepositoryV1TestHarness(IAccountTypeRepository accountTypeRepo, IUserMessageBox userMessageBox, IBudgetBucketRepository bucketRepo, BankImportUtilities importUtilities, ILogger logger)
     : base(userMessageBox, 
             importUtilities, 
             logger, 
             new TransactionSetDtoToStatementModelMapper(), 
             new StatementModelToTransactionSetDtoMapper())
 {
 }
 public CsvOnDiskStatementModelRepositoryV1TestHarness(BankImportUtilities importUtilities, IReaderWriterSelector readerWriterSelector)
     : base(importUtilities,
         new FakeLogger(),
         new Mapper_TransactionSetDto_StatementModel(
             new FakeLogger(), 
             new Mapper_TransactionDto_Transaction(new InMemoryAccountTypeRepository(), new BucketBucketRepoAlwaysFind(), new InMemoryTransactionTypeRepository())),
         readerWriterSelector)
 {
 }
 public CsvOnDiskStatementModelRepositoryV1TestHarness(
     BankImportUtilities importUtilities,
     IDtoMapper<TransactionSetDto, StatementModel> mapper,
     IReaderWriterSelector readerWriterSelector)
     : base(importUtilities,
         new FakeLogger(),
         mapper,
         readerWriterSelector)
 {
 }
        /// <summary>
        ///     Initializes a new instance of the <see cref="AnzAccountStatementImporterV1" /> class.
        /// </summary>
        /// <exception cref="System.ArgumentNullException">
        /// </exception>
        public AnzAccountStatementImporterV1([NotNull] BankImportUtilities importUtilities, [NotNull] ILogger logger, [NotNull] IReaderWriterSelector readerWriterSelector)
        {
            if (importUtilities == null)
            {
                throw new ArgumentNullException(nameof(importUtilities));
            }

            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (readerWriterSelector == null) throw new ArgumentNullException(nameof(readerWriterSelector));

            this.importUtilities = importUtilities;
            this.logger = logger;
            this.readerWriterSelector = readerWriterSelector;
            this.importUtilities.ConfigureLocale(new CultureInfo("en-NZ"));
            // ANZ importers are NZ specific at this stage.
        }
        public AnzVisaStatementImporterV1([NotNull] IUserMessageBox userMessageBox, [NotNull] BankImportUtilities importUtilities, [NotNull] ILogger logger)
        {
            if (userMessageBox == null)
            {
                throw new ArgumentNullException("userMessageBox");
            }

            if (importUtilities == null)
            {
                throw new ArgumentNullException("importUtilities");
            }

            if (logger == null)
            {
                throw new ArgumentNullException("logger");
            }

            this.userMessageBox = userMessageBox;
            this.importUtilities = importUtilities;
            this.logger = logger;
        }
        /// <summary>
        ///     Initializes a new instance of the <see cref="AnzAccountStatementImporterV1" /> class.
        /// </summary>
        /// <exception cref="System.ArgumentNullException">
        /// </exception>
        public AnzAccountStatementImporterV1([NotNull] BankImportUtilities importUtilities, [NotNull] ILogger logger, [NotNull] IReaderWriterSelector readerWriterSelector)
        {
            if (importUtilities == null)
            {
                throw new ArgumentNullException(nameof(importUtilities));
            }

            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (readerWriterSelector == null)
            {
                throw new ArgumentNullException(nameof(readerWriterSelector));
            }

            this.importUtilities      = importUtilities;
            this.logger               = logger;
            this.readerWriterSelector = readerWriterSelector;
            this.importUtilities.ConfigureLocale(new CultureInfo("en-NZ"));
            // ANZ importers are NZ specific at this stage.
        }
        public CsvOnDiskStatementModelRepositoryV1(
            [NotNull] IUserMessageBox userMessageBox,
            [NotNull] BankImportUtilities importUtilities,
            [NotNull] ILogger logger,
            [NotNull] BasicMapper<TransactionSetDto, StatementModel> dtoToDomainMapper,
            [NotNull] BasicMapper<StatementModel, TransactionSetDto> domainToDtoMapper)
        {
            if (userMessageBox == null)
            {
                throw new ArgumentNullException("userMessageBox");
            }

            if (importUtilities == null)
            {
                throw new ArgumentNullException("importUtilities");
            }

            if (logger == null)
            {
                throw new ArgumentNullException("logger");
            }

            if (dtoToDomainMapper == null)
            {
                throw new ArgumentNullException("dtoToDomainMapper");
            }

            if (domainToDtoMapper == null)
            {
                throw new ArgumentNullException("domainToDtoMapper");
            }

            this.userMessageBox = userMessageBox;
            this.importUtilities = importUtilities;
            this.logger = logger;
            this.dtoToDomainMapper = dtoToDomainMapper;
            this.domainToDtoMapper = domainToDtoMapper;
        }
        private BankImportUtilities CreateSubject()
        {
            BucketRepositoryMock = new Mock<IBudgetBucketRepository>();

            var subject = new BankImportUtilities(new FakeLogger());
            subject.ConfigureLocale(CultureInfo.CreateSpecificCulture("en-NZ"));
            return subject;
        }