예제 #1
0
        public void StartTask(Task task, TaskSettings taskSettings)
        {
            _taskDataService = new FinanceAPIMongoDataService.DataService.TaskDataService(taskSettings.MongoDB_ConnectionString);

            if (!_taskDataService.AllocateTask(task.ID))
            {
                return;
            }

            ITask taskInstance = GetInstance(task.TaskType, taskSettings);

            if (taskInstance == null)
            {
                return;
            }

            taskInstance.Completed += Complete;

            Serilog.Log.Logger?.Information($"Starting task: {task.Name}");

            try
            {
                // Executes task in the background
                // System.Threading.Tasks.Task threadedTask = new System.Threading.Tasks.Task(() =>
                // {
                //  taskInstance.Execute(task.Data, taskSettings);
                // });
                // threadedTask.Start();
            }
            catch (Exception ex)
            {
                Serilog.Log.Logger?.Error(ex.Message);
            }
        }
예제 #2
0
 public MiraiNotesDataService(
     IUserDataService userDataService,
     ITaskListDataService taskListDataService,
     ITaskDataService taskDataService,
     IAppSettingsService appSettings,
     ILogger logger)
 {
     MiraiNotesContext.Init(appSettings, logger.ForContext <MiraiNotesDataService>());
     UserService     = userDataService;
     TaskListService = taskListDataService;
     TaskService     = taskDataService;
 }
예제 #3
0
        public TaskPoller(IOptions <TaskSettings> taskSettings, IBackgroundJobClient backgroundJobs, TransactionLogoCalculator transactionLogoCalculator)
        {
            _taskSettings = taskSettings.Value;
            taskFactory   = new TaskFactory(backgroundJobs, transactionLogoCalculator);

            _taskDataService = new FinanceAPIMongoDataService.DataService.TaskDataService(_taskSettings.MongoDB_ConnectionString);

            System.Threading.Tasks.Task threadedTask = new System.Threading.Tasks.Task(() => Start());
            threadedTask.Start();

            RecurringJob.AddOrUpdate(() => transactionLogoCalculator.Run(null, null), Cron.Hourly);
            RecurringJob.AddOrUpdate <AccountRefreshPoller>(r => r.Execute(null), "0 */5 * ? * *");
        }
        public AddTaskViewModel(INavigator <InnerViewModel> nnavigator, ITaskDataService taskDataService)
        {
            navigator = (IInnerNavigator <Task>)nnavigator;

            TaskToAdd = new Task {
                IssueId     = navigator.ParentViewModel.SelectedIssue.Id,
                Title       = "",
                Description = "",
                Progress    = 0
            };
            AddTaskCommand        = new AddTaskCommand(this, taskDataService);
            CloseInnerViewCommand = new CloseInnerViewCommand(this);
        }
        public UpdateTaskViewModel(INavigator <InnerViewModel> nnavigator, ITaskDataService taskDataService)
        {
            navigator = (IInnerNavigator <Task>)nnavigator;
            Task task = navigator.ParentViewModel.SelectedItem;

            TaskToUpdate = new Task()
            {
                Id          = task.Id,
                IssueId     = task.IssueId,
                Title       = task.Title,
                Description = task.Description,
                Progress    = task.Progress
            };
            UpdateTaskCommand     = new UpdateTaskCommand(this, taskDataService);
            CloseInnerViewCommand = new CloseInnerViewCommand(this);
        }
예제 #6
0
 public AddTaskCommand(AddTaskViewModel addVM, ITaskDataService taskDataService)
 {
     _addVM           = addVM;
     _taskDataService = taskDataService;
 }
 public UpdateTaskCommand(UpdateTaskViewModel upVM, ITaskDataService taskDataService)
 {
     _upVM            = upVM;
     _taskDataService = taskDataService;
 }
예제 #8
0
 public DragAndDropService(ITaskDataService taskService)
 {
     _taskService = taskService;
 }
 public TasksViewModel(IInnerNavigator <Task> navigator, IIssueDataService issueService, ITaskDataService taskDataService)
 {
     InnerTasksNavigator = navigator;
     _issueService       = issueService;
     InnerTasksNavigator.ParentViewModel = this;
     UpdateDeleteButtonsVisibility       = "Collapsed";
     AddButtonVisibility = "Collapsed";
     DeleteTasksCommand  = new DeleteTasksCommand(this, taskDataService);
 }
 public RootInnerViewModelFactory(IAuthenticator authenticator, IIssueDataService issueDataService, ITaskDataService taskDataService)
 {
     _authenticator    = authenticator;
     _issueDataService = issueDataService;
     _taskDataService  = taskDataService;
 }
예제 #11
0
 public TaskOverviewViewModel(ITaskDataService taskDataService)
 {
     this.taskDataService = taskDataService;
     LoadTaskData();
 }
예제 #12
0
 public HomeController()
 {
     _taskDataService = new FileTaskDataService();
 }
예제 #13
0
 public TaskProcessor(string connectionString, IBackgroundJobClient backgroundJobs)
 {
     _connectionString = connectionString;
     _backgroundJobs   = backgroundJobs;
     _taskDataService  = new FinanceAPIMongoDataService.DataService.TaskDataService(_connectionString);
 }
 public DeleteTasksCommand(TasksViewModel isVM, ITaskDataService taskDataService)
 {
     _isVM            = isVM;
     _taskDataService = taskDataService;
 }