1
0
Fork 0

Introduce high priority check

This commit is contained in:
Malte Brandy 2018-07-20 01:13:17 +02:00
parent d355c0cc5b
commit 5289419c78
No known key found for this signature in database
GPG key ID: 226A2D41EF5378C9
3 changed files with 14 additions and 10 deletions

View file

@ -22,8 +22,8 @@ use error::{Result, ResultExt, ErrorKind as EK, Error};
use hotkeys::{term_cmd, str2cmd};
use tasktree::{TreeCache, TaskNode};
use well_known::{INBOX, ACCOUNTING, TREESORT, PRIVATE_MAILBOX, KIVA_MAILBOX, AK_MAILBOX,
SORT_INBOX, SORT_INBOX_AK, SORT_INBOX_KIVA, MAINTENANCE, CHECK_MEDIUM, CHECK_LOW,
CHECK_NONE, CHECK_OPTIONAL};
SORT_INBOX, SORT_INBOX_AK, SORT_INBOX_KIVA, MAINTENANCE, CHECK_HIGH,
CHECK_MEDIUM, CHECK_LOW, CHECK_NONE, CHECK_OPTIONAL};
use mail::{sort_mailbox, SortBox};
use generate::GeneratedTask;
@ -308,11 +308,12 @@ impl Kassandra {
update_tasks(&mut self.cache)?;
process_task(self, &*INBOX)?;
process_task(self, &*TREESORT)?;
process_task(self, &*CHECK_MEDIUM)?;
process_task(self, &*CHECK_LOW)?;
process_task(self, &*CHECK_NONE)?;
process_task(self, &*CHECK_OPTIONAL)?;
process_task(self, &*ACCOUNTING)?;
process_task(self, &*CHECK_MEDIUM)?;
process_task(self, &*CHECK_HIGH)?;
self.select_next_task()?;
Ok(())
}

View file

@ -3,7 +3,8 @@ use task_hookrs::cache::TaskCache;
use refresh::TaskRefresher;
use tasktree::{TreeCache, TaskNode};
use well_known::{SIMPLE, WellKnown, INBOX, ACCOUNTING, TREESORT, SORT_INBOX, SORT_INBOX_AK,
SORT_INBOX_KIVA, MAINTENANCE, CHECK_MEDIUM, CHECK_LOW, CHECK_NONE, CHECK_OPTIONAL};
SORT_INBOX_KIVA, MAINTENANCE, CHECK_HIGH, CHECK_MEDIUM, CHECK_LOW, CHECK_NONE,
CHECK_OPTIONAL};
use error::Result;
use kassandra::Kassandra;
use mail::create_tasks;
@ -62,6 +63,7 @@ pub fn update_tasks(cache: &mut TaskCache) -> Result<()> {
update_task(cache, &*MAINTENANCE)?;
update_task(cache, &*INBOX)?;
update_task(cache, &*TREESORT)?;
update_task(cache, &*CHECK_HIGH)?;
update_task(cache, &*CHECK_MEDIUM)?;
update_task(cache, &*CHECK_LOW)?;
update_task(cache, &*CHECK_NONE)?;

View file

@ -32,17 +32,18 @@ lazy_static! {
time: NaiveTime::from_hms(20, 0, 0),
repeat: Interval::Day(1)
});
pub static ref MORNING: Timer = Timer::Repetition(CalendarRepeater {
date: NaiveDate::from_ymd(2018, 5, 8),
time: NaiveTime::from_hms(6, 0, 0),
repeat: Interval::Day(1)
});
pub static ref SIMPLE: Vec<SimpleTask> = make_simple();
pub static ref INBOX: Inbox = Inbox { timer: DAILY.clone() };
pub static ref TREESORT: Treesort = Treesort { timer: DAILY.clone() };
pub static ref ACCOUNTING: Accounting = Accounting { timer: DAILY.clone() };
pub static ref MAINTENANCE: Maintenance = Maintenance { timer: DAILY.clone() };
pub static ref CHECK_MEDIUM: TaskCheck = TaskCheck { timer: Timer::Repetition(CalendarRepeater {
date: NaiveDate::from_ymd(2018, 5, 8),
time: NaiveTime::from_hms(6, 0, 0),
repeat: Interval::Day(1)
}),
priority: (PS::Medium, false) };
pub static ref CHECK_HIGH: TaskCheck = TaskCheck { timer: MORNING.clone(), priority: (PS::High, false) };
pub static ref CHECK_MEDIUM: TaskCheck = TaskCheck { timer: MORNING.clone(), priority: (PS::Medium, false) };
pub static ref CHECK_LOW: TaskCheck = TaskCheck { timer: DAILY.clone(), priority: (PS::Low, false) };
pub static ref CHECK_NONE: TaskCheck = TaskCheck { timer: DAILY.clone(), priority: (PS::None, false) };
pub static ref CHECK_OPTIONAL: TaskCheck = TaskCheck { timer: DAILY.clone(), priority: (PS::Optional,false) };