1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#[allow(unused_imports)]
use crate::internal_prelude::*;
use crate::types as rt;

pub enum Action {
    Skip,
    Term,
}

pub trait Filter<JS: rt::JobStateValues, TS: rt::TaskStateValues> {
    fn name(&self) -> &'static str;
    fn accept(
        &self,
        ctx: &rt::JobCtx<JS, TS>,
        task: &rt::Task,
        status: &rt::HttpStatus,
    ) -> Action;
}