public UploadMobileDataController(
            [NotNull] IUiContext uiContext,
            [NotNull] IMobileDataExporter dataExporter,
            [NotNull] IMobileDataUploader uploader,
            [NotNull] IApplicationDatabaseService appDbService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }
            if (dataExporter == null)
            {
                throw new ArgumentNullException(nameof(dataExporter));
            }
            if (uploader == null)
            {
                throw new ArgumentNullException(nameof(uploader));
            }
            if (appDbService == null)
            {
                throw new ArgumentNullException(nameof(appDbService));
            }
            this.dataExporter      = dataExporter;
            this.uploader          = uploader;
            this.appDbService      = appDbService;
            MessengerInstance      = uiContext.Messenger;
            this.messageBoxService = uiContext.UserPrompts.MessageBox;
            this.logger            = uiContext.Logger;

            MessengerInstance.Register <WidgetActivatedMessage>(this, OnWidgetActivatedMessageReceived);
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogMessageReceived);
        }
Exemplo n.º 2
0
        public LoadFileController(
            [NotNull] UiContext uiContext,
            [NotNull] IAccountTypeRepository accountTypeRepository,
            [NotNull] IVersionedStatementModelRepository statementModelRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException("uiContext");
            }

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

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

            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.statementModelRepository = statementModelRepository;
            this.userPromptOpenFileFactory = uiContext.UserPrompts.OpenFileFactory;
            this.accountTypeRepository = accountTypeRepository;
            UseExistingAccountName = true;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
        }
        public GlobalFilterController(
            [NotNull] UiContext uiContext,
            [NotNull] IAccountTypeRepository accountTypeRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException("uiContext");
            }

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

            this.accountTypeRepository = accountTypeRepository;
            this.userMessageBox = uiContext.UserPrompts.MessageBox;
            this.doNotUseCriteria = new GlobalFilterCriteria();

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ApplicationStateLoadedMessage>(this, OnApplicationStateLoaded);
            MessengerInstance.Register<ApplicationStateLoadFinishedMessage>(this, OnApplicationStateLoadFinished);
            MessengerInstance.Register<ApplicationStateRequestedMessage>(this, OnApplicationStateRequested);
            MessengerInstance.Register<RequestFilterMessage>(this, OnGlobalFilterRequested);
            MessengerInstance.Register<WidgetActivatedMessage>(this, OnWidgetActivatedMessageReceived);
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            MessengerInstance.Register<RequestFilterChangeMessage>(this, OnGlobalFilterChangeRequested);
        }
        public StatementFileManager(
            [NotNull] LoadFileController loadFileController,
            [NotNull] IVersionedStatementModelRepository statementModelRepository,
            [NotNull] IBankStatementImporterRepository importerRepository,
            [NotNull] UiContext uiContext)
        {
            if (loadFileController == null)
            {
                throw new ArgumentNullException("loadFileController");
            }

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

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

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

            this.loadFileController = loadFileController;
            this.statementModelRepository = statementModelRepository;
            this.importerRepository = importerRepository;
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
Exemplo n.º 5
0
        public NewRuleController(
            [NotNull] UiContext uiContext,
            [NotNull] ITransactionRuleService rulesService,
            [NotNull] IBudgetBucketRepository bucketRepo)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            this.rulesService      = rulesService;
            this.bucketRepo        = bucketRepo;
            this.messageBoxService = uiContext.UserPrompts.MessageBox;
            this.logger            = uiContext.Logger;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
        }
Exemplo n.º 6
0
        public NewRuleController(
            [NotNull] UiContext uiContext,
            [NotNull] ITransactionRuleService rulesService,
            [NotNull] IBudgetBucketRepository bucketRepo)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            this.rulesService = rulesService;
            this.bucketRepo = bucketRepo;
            this.messageBoxService = uiContext.UserPrompts.MessageBox;
            this.logger = uiContext.Logger;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
        }
 public CsvOnDiskStatementModelRepositoryV1TestHarness(IAccountTypeRepository accountTypeRepo, IUserMessageBox userMessageBox, IBudgetBucketRepository bucketRepo, BankImportUtilities importUtilities, ILogger logger)
     : base(userMessageBox, 
             importUtilities, 
             logger, 
             new TransactionSetDtoToStatementModelMapper(), 
             new StatementModelToTransactionSetDtoMapper())
 {
 }
 internal virtual void AbortIfFileDoesntExist(string fileName, IUserMessageBox messageBox)
 {
     if (!File.Exists(fileName))
     {
         messageBox.Show("The file name provided no longer exists at its location.", "File Not Found");
         throw new FileNotFoundException("File not found.", fileName);
     }
 }
Exemplo n.º 9
0
        public LedgerBookController(
            [NotNull] UiContext uiContext,
            [NotNull] LedgerBookControllerFileOperations fileOperations,
            [NotNull] LedgerBookGridBuilderFactory uiBuilder,
            [NotNull] ILedgerService ledgerService,
            [NotNull] IReconciliationService reconService,
            [NotNull] NewWindowViewLoader newWindowViewLoader)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

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

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

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

            this.uiBuilder                    = uiBuilder;
            this.ledgerService                = ledgerService;
            this.reconService                 = reconService;
            this.newWindowViewLoader          = newWindowViewLoader;
            this.messageBox                   = uiContext.UserPrompts.MessageBox;
            this.questionBox                  = uiContext.UserPrompts.YesNoBox;
            this.inputBox                     = uiContext.UserPrompts.InputBox;
            FileOperations                    = fileOperations;
            FileOperations.LedgerService      = this.ledgerService;
            this.uiContext                    = uiContext;
            this.doNotUseNumberOfMonthsToShow = 2;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <BudgetReadyMessage>(this, OnBudgetReadyMessageReceived);
            MessengerInstance.Register <StatementReadyMessage>(this, OnStatementReadyMessageReceived);

            this.ledgerService.Saved  += OnSaveNotificationReceieved;
            this.ledgerService.Closed += OnClosedNotificationReceived;
            this.ledgerService.NewDataSourceAvailable += OnNewDataSourceAvailableNotificationReceived;
        }
Exemplo n.º 10
0
        /// <summary>
        ///     Initializes a new instance of the <see cref="PersistApplicationStateAsXaml" /> class.
        /// </summary>
        /// <param name="userMessageBox">A service to show the user a message box.</param>
        /// <exception cref="System.ArgumentNullException">userMessageBox cannot be null.</exception>
        public PersistApplicationStateAsXaml([NotNull] IUserMessageBox userMessageBox)
        {
            if (userMessageBox == null)
            {
                throw new ArgumentNullException(nameof(userMessageBox));
            }

            this.userMessageBox = userMessageBox;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="PersistApplicationStateAsXaml"/> class.
        /// </summary>
        /// <param name="userMessageBox">A service to show the user a message box.</param>
        /// <exception cref="System.ArgumentNullException">userMessageBox cannot be null.</exception>
        public PersistApplicationStateAsXaml([NotNull] IUserMessageBox userMessageBox)
        {
            if (userMessageBox == null)
            {
                throw new ArgumentNullException("userMessageBox");
            }

            this.userMessageBox = userMessageBox;
        }
        internal override void AbortIfFileDoesntExist(string fileName, IUserMessageBox messageBox)
        {
            if (AbortIfFileDoesntExistOverride == null)
            {
                return;
            }

            AbortIfFileDoesntExistOverride(fileName, messageBox);
        }
        public NewBudgetModelController([NotNull] IUiContext uiContext)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
Exemplo n.º 14
0
        public NewBudgetModelController([NotNull] IUiContext uiContext)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
Exemplo n.º 15
0
        public EncryptFileController([NotNull] IUiContext uiContext, [NotNull] IApplicationDatabaseService appDbService)
        {
            this.appDbService = appDbService;
            if (uiContext == null) throw new ArgumentNullException(nameof(uiContext));
            if (appDbService == null) throw new ArgumentNullException(nameof(appDbService));
            this.questionService = uiContext.UserPrompts.YesNoBox;
            this.messageService = uiContext.UserPrompts.MessageBox;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<WidgetActivatedMessage>(this, OnWidgetActivatedMessageReceived);
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDiaglogResponseMessageReceived);
        }
        public LongTermSpendingGraphController([NotNull] ILongTermSpendingChartService chartService, IUserMessageBox messageService)
        {
            if (chartService == null)
            {
                throw new ArgumentNullException(nameof(chartService));
            }

            if (messageService == null) throw new ArgumentNullException(nameof(messageService));

            this.chartService = chartService;
            this.messageService = messageService;
            ToggleAll = true;
        }
        public LongTermSpendingGraphController([NotNull] ILongTermSpendingChartService chartService, IUserMessageBox messageService)
        {
            if (chartService == null)
            {
                throw new ArgumentNullException(nameof(chartService));
            }

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

            this.chartService   = chartService;
            this.messageService = messageService;
            ToggleAll           = true;
        }
        public CreateNewFixedBudgetController([NotNull] IUiContext uiContext, [NotNull] IBudgetBucketRepository bucketRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            this.bucketRepository = bucketRepository;
            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
        public AppliedRulesController([NotNull] UiContext uiContext, [NotNull] IMatchmaker matchmaker)
        {
            this.matchmaker = matchmaker;
            if (uiContext == null)
            {
                throw new ArgumentNullException("uiContext");
            }

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

            RulesController = uiContext.RulesController;
            this.statementController = uiContext.StatementController;
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
Exemplo n.º 20
0
        public CreateNewFixedBudgetController([NotNull] IUiContext uiContext, [NotNull] IBudgetBucketRepository bucketRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            this.bucketRepository = bucketRepository;
            MessengerInstance     = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
Exemplo n.º 21
0
        public BudgetController(
            [NotNull] IBudgetRepository budgetRepository,
            [NotNull] UiContext uiContext,
            [NotNull] DemoFileHelper demoFileHelper,
            [NotNull] IBudgetBucketRepository bucketRepo)
        {
            if (budgetRepository == null)
            {
                throw new ArgumentNullException("budgetRepository");
            }

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

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

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

            this.demoFileHelper = demoFileHelper;
            this.bucketRepo = bucketRepo;
            this.budgetRepository = budgetRepository;
            this.questionBox = uiContext.UserPrompts.YesNoBox;
            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.fileOpenDialogFactory = uiContext.UserPrompts.OpenFileFactory;
            this.fileSaveDialogFactory = uiContext.UserPrompts.SaveFileFactory;
            this.inputBox = uiContext.UserPrompts.InputBox;
            BudgetPieController = uiContext.BudgetPieController;
            Shown = false;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ApplicationStateRequestedMessage>(this, OnApplicationStateRequested);
            MessengerInstance.Register<ApplicationStateLoadedMessage>(this, OnApplicationStateLoaded);
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnPopUpResponseReceived);

            var budget = new BudgetModel();
            CurrentBudget = new BudgetCurrencyContext(new BudgetCollection(new[] { budget }), budget);
        }
        public EncryptFileController([NotNull] IUiContext uiContext, [NotNull] IApplicationDatabaseService appDbService)
        {
            this.appDbService = appDbService;
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }
            if (appDbService == null)
            {
                throw new ArgumentNullException(nameof(appDbService));
            }
            this.questionService = uiContext.UserPrompts.YesNoBox;
            this.messageService  = uiContext.UserPrompts.MessageBox;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <WidgetActivatedMessage>(this, OnWidgetActivatedMessageReceived);
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDiaglogResponseMessageReceived);
        }
        public AddLedgerReconciliationController(
            [NotNull] UiContext uiContext,
            [NotNull] IAccountTypeRepository accountTypeRepository)
        {
            this.accountTypeRepository = accountTypeRepository;
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
        public GlobalFilterController([NotNull] UiContext uiContext)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

            this.userMessageBox   = uiContext.UserPrompts.MessageBox;
            this.doNotUseCriteria = new GlobalFilterCriteria();

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <ApplicationStateLoadedMessage>(this, OnApplicationStateLoaded);
            MessengerInstance.Register <ApplicationStateLoadFinishedMessage>(this, OnApplicationStateLoadFinished);
            MessengerInstance.Register <ApplicationStateRequestedMessage>(this, OnApplicationStateRequested);
            MessengerInstance.Register <RequestFilterMessage>(this, OnGlobalFilterRequested);
            MessengerInstance.Register <WidgetActivatedMessage>(this, OnWidgetActivatedMessageReceived);
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            MessengerInstance.Register <RequestFilterChangeMessage>(this, OnGlobalFilterChangeRequested);
        }
        public CreateNewSurprisePaymentMonitorController([NotNull] IUiContext uiContext, [NotNull] IBudgetBucketRepository bucketRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            this.bucketRepository = bucketRepository;
            MessengerInstance     = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            PaymentStartDate = DateTime.Today;
            Frequency        = WeeklyOrFortnightly.Weekly;
            this.messageBox  = uiContext.UserPrompts.MessageBox;
        }
        public CreateNewSurprisePaymentMonitorController([NotNull] IUiContext uiContext, [NotNull] IBudgetBucketRepository bucketRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            this.bucketRepository = bucketRepository;
            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            PaymentStartDate = DateTime.Today;
            Frequency = WeeklyOrFortnightly.Weekly;
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
        public AddLedgerReconciliationController(
            [NotNull] UiContext uiContext,
            [NotNull] IAccountTypeRepository accountTypeRepository)
        {
            this.accountTypeRepository = accountTypeRepository;
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.messageBox = uiContext.UserPrompts.MessageBox;
        }
        public UploadMobileDataController(
            [NotNull] IUiContext uiContext,
            [NotNull] IMobileDataExporter dataExporter,
            [NotNull] IMobileDataUploader uploader,
            [NotNull] IApplicationDatabaseService appDbService)
        {
            if (uiContext == null) throw new ArgumentNullException(nameof(uiContext));
            if (dataExporter == null) throw new ArgumentNullException(nameof(dataExporter));
            if (uploader == null) throw new ArgumentNullException(nameof(uploader));
            if (appDbService == null) throw new ArgumentNullException(nameof(appDbService));
            this.dataExporter = dataExporter;
            this.uploader = uploader;
            this.appDbService = appDbService;
            MessengerInstance = uiContext.Messenger;
            this.messageBoxService = uiContext.UserPrompts.MessageBox;
            this.logger = uiContext.Logger;

            MessengerInstance.Register<WidgetActivatedMessage>(this, OnWidgetActivatedMessageReceived);
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogMessageReceived);
        }
Exemplo n.º 29
0
        public LoadFileController(
            [NotNull] IUiContext uiContext,
            [NotNull] IAccountTypeRepository accountTypeRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.userPromptOpenFileFactory = uiContext.UserPrompts.OpenFileFactory;
            this.accountTypeRepository = accountTypeRepository;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
        }
        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;
        }
Exemplo n.º 31
0
        public LoadFileController(
            [NotNull] IUiContext uiContext,
            [NotNull] IAccountTypeRepository accountTypeRepository)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.userPromptOpenFileFactory = uiContext.UserPrompts.OpenFileFactory;
            this.accountTypeRepository     = accountTypeRepository;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
        }
Exemplo n.º 32
0
        public BudgetController(
            [NotNull] UiContext uiContext,
            [NotNull] IBudgetMaintenanceService maintenanceService,
            [NotNull] IApplicationDatabaseService applicationDatabaseService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            this.maintenanceService = maintenanceService;
            this.applicationDatabaseService = applicationDatabaseService;
            this.questionBox = uiContext.UserPrompts.YesNoBox;
            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.inputBox = uiContext.UserPrompts.InputBox;
            BudgetPieController = uiContext.BudgetPieController;
            NewBudgetController = uiContext.NewBudgetModelController;
            NewBudgetController.Ready += OnAddNewBudgetReady;
            Shown = false;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnPopUpResponseReceived);
            this.maintenanceService.Closed += OnClosedNotificationReceived;
            this.maintenanceService.NewDataSourceAvailable += OnNewDataSourceAvailableNotificationReceived;
            this.maintenanceService.Saving += OnSavingNotificationReceived;
            this.maintenanceService.Validating += OnValidatingNotificationReceived;
            this.maintenanceService.Saved += OnSavedNotificationReceived;

            CurrentBudget = new BudgetCurrencyContext(this.maintenanceService.Budgets, this.maintenanceService.Budgets.CurrentActiveBudget);
        }
Exemplo n.º 33
0
        public BudgetController(
            [NotNull] UiContext uiContext,
            [NotNull] IBudgetMaintenanceService maintenanceService,
            [NotNull] IApplicationDatabaseService applicationDatabaseService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            this.maintenanceService         = maintenanceService;
            this.applicationDatabaseService = applicationDatabaseService;
            this.questionBox           = uiContext.UserPrompts.YesNoBox;
            this.messageBox            = uiContext.UserPrompts.MessageBox;
            this.inputBox              = uiContext.UserPrompts.InputBox;
            BudgetPieController        = uiContext.BudgetPieController;
            NewBudgetController        = uiContext.NewBudgetModelController;
            NewBudgetController.Ready += OnAddNewBudgetReady;
            Shown = false;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnPopUpResponseReceived);
            this.maintenanceService.Closed += OnClosedNotificationReceived;
            this.maintenanceService.NewDataSourceAvailable += OnNewDataSourceAvailableNotificationReceived;
            this.maintenanceService.Saving     += OnSavingNotificationReceived;
            this.maintenanceService.Validating += OnValidatingNotificationReceived;
            this.maintenanceService.Saved      += OnSavedNotificationReceived;

            CurrentBudget = new BudgetCurrencyContext(this.maintenanceService.Budgets, this.maintenanceService.Budgets.CurrentActiveBudget);
        }
Exemplo n.º 34
0
        public UserPrompts(
            [NotNull] IUserMessageBox messageBox,
            [NotNull] Func <IUserPromptOpenFile> openFileFactory,
            [NotNull] Func <IUserPromptSaveFile> saveFileFactory,
            [NotNull] IUserQuestionBoxYesNo yesNoBox,
            [NotNull] IUserInputBox inputBox)
        {
            if (messageBox == null)
            {
                throw new ArgumentNullException(nameof(messageBox));
            }

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

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

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

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

            OpenFileFactory = openFileFactory;
            SaveFileFactory = saveFileFactory;
            MessageBox      = messageBox;
            YesNoBox        = yesNoBox;
            InputBox        = inputBox;
        }
        public LedgerBookControllerFileOperations(
            [NotNull] UiContext uiContext,
            [NotNull] IMessenger messenger,
            [NotNull] ILedgerBookRepository ledgerBookRepository,
            [NotNull] DemoFileHelper demoFileHelper)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException("uiContext");
            }

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

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

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

            this.saveFileDialogFactory = uiContext.UserPrompts.SaveFileFactory;
            this.openFileDialogFactory = uiContext.UserPrompts.OpenFileFactory;
            this.questionBox = uiContext.UserPrompts.YesNoBox;
            this.messageBox = uiContext.UserPrompts.MessageBox;

            this.waitCursorFactory = uiContext.WaitCursorFactory;
            this.ledgerRepository = ledgerBookRepository;
            this.demoFileHelper = demoFileHelper;
            MessengerInstance = messenger;

            ViewModel = new LedgerBookViewModel();
        }
        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;
        }
        public LedgerBucketViewController([NotNull] IAccountTypeRepository accountRepo, [NotNull] IUiContext context, [NotNull] ILedgerService ledgerService)
        {
            if (accountRepo == null)
            {
                throw new ArgumentNullException(nameof(accountRepo));
            }

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

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

            MessengerInstance = context.Messenger;
            MessengerInstance.Register<ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.accountRepo = accountRepo;
            this.ledgerService = ledgerService;
            this.messageBox = context.UserPrompts.MessageBox;
        }
        public LedgerBucketViewController([NotNull] IAccountTypeRepository accountRepo, [NotNull] IUiContext context, [NotNull] ILedgerService ledgerService)
        {
            if (accountRepo == null)
            {
                throw new ArgumentNullException(nameof(accountRepo));
            }

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

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

            MessengerInstance = context.Messenger;
            MessengerInstance.Register <ShellDialogResponseMessage>(this, OnShellDialogResponseReceived);
            this.accountRepo   = accountRepo;
            this.ledgerService = ledgerService;
            this.messageBox    = context.UserPrompts.MessageBox;
        }
Exemplo n.º 39
0
        public AppliedRulesController([NotNull] IUiContext uiContext, [NotNull] ITransactionRuleService ruleService, [NotNull] IApplicationDatabaseService applicationDatabaseService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            RulesController = uiContext.RulesController;
            this.ruleService = ruleService;
            this.applicationDatabaseService = applicationDatabaseService;
            this.statementController = uiContext.StatementController;
            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.ruleService.Saved += OnSavedNotificationReceived;
        }
Exemplo n.º 40
0
        public AppliedRulesController([NotNull] IUiContext uiContext, [NotNull] ITransactionRuleService ruleService, [NotNull] IApplicationDatabaseService applicationDatabaseService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            RulesController  = uiContext.RulesController;
            this.ruleService = ruleService;
            this.applicationDatabaseService = applicationDatabaseService;
            this.statementController        = uiContext.StatementController;
            this.messageBox         = uiContext.UserPrompts.MessageBox;
            this.ruleService.Saved += OnSavedNotificationReceived;
        }
        public StatementControllerFileOperations(
            [NotNull] IUiContext uiContext,
            [NotNull] LoadFileController loadFileController,
            [NotNull] IApplicationDatabaseService applicationDatabaseService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            this.messageBox         = uiContext.UserPrompts.MessageBox;
            this.loadFileController = loadFileController;
            ViewModel = new StatementViewModel(uiContext, applicationDatabaseService);
        }
        public StatementControllerFileOperations(
            [NotNull] IUiContext uiContext,
            [NotNull] LoadFileController loadFileController,
            [NotNull] IApplicationDatabaseService applicationDatabaseService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException(nameof(uiContext));
            }

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

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

            this.messageBox = uiContext.UserPrompts.MessageBox;
            this.loadFileController = loadFileController;
            ViewModel = new StatementViewModel(uiContext, applicationDatabaseService);
        }
Exemplo n.º 43
0
        public DashboardController(
            [NotNull] UiContext uiContext,
            [NotNull] IWidgetRepository widgetRepository,
            [NotNull] IBudgetBucketRepository bucketRepository,
            [NotNull] ChooseBudgetBucketController chooseBudgetBucketController,
            [NotNull] WidgetService widgetService)
        {
            if (uiContext == null)
            {
                throw new ArgumentNullException("uiContext");
            }

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

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

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

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

            this.widgetRepository = widgetRepository;
            this.widgetRepository.WidgetRemoved += OnBudgetBucketMonitorWidgetRemoved;
            this.bucketRepository = bucketRepository;
            this.chooseBudgetBucketController = chooseBudgetBucketController;
            this.chooseBudgetBucketController.Chosen += OnBudgetBucketMonitorWidgetAdded;
            GlobalFilterController = uiContext.GlobalFilterController;
            CorrelationId = Guid.NewGuid();
            this.messageBox = uiContext.UserPrompts.MessageBox;

            MessengerInstance = uiContext.Messenger;
            MessengerInstance.Register<StatementReadyMessage>(this, OnStatementReadyMessageReceived);
            MessengerInstance.Register<StatementHasBeenModifiedMessage>(this, OnStatementModifiedMessagedReceived);
            MessengerInstance.Register<ApplicationStateLoadedMessage>(this, OnApplicationStateLoadedMessageReceived);
            MessengerInstance.Register<ApplicationStateRequestedMessage>(this, OnApplicationStateRequested);
            MessengerInstance.Register<BudgetReadyMessage>(this, OnBudgetReadyMessageReceived);
            MessengerInstance.Register<FilterAppliedMessage>(this, OnFilterAppliedMessageReceived);
            MessengerInstance.Register<LedgerBookReadyMessage>(this, OnLedgerBookReadyMessageReceived);


            this.updateTimer = new Timer(TimeSpan.FromMinutes(1).TotalMilliseconds)
            {
                AutoReset = true,
                Enabled = true,
            };
            this.updateTimer.Elapsed += OnUpdateTimerElapsed;

            InitialiseSupportedDependenciesArray();
            this.widgetService = widgetService;
        }