package timeflow.data.db.filter; import timeflow.data.db.*; import timeflow.data.time.*; public class TimeIntervalFilter extends ActFilter { Interval interval; Field timeField; boolean acceptNull; public TimeIntervalFilter(long start, long end, boolean acceptNull, Field timeField) { this.interval=new Interval(start, end); this.acceptNull=acceptNull; this.timeField=timeField; } public TimeIntervalFilter(Interval interval, Field timeField) { this.interval=interval; this.timeField=timeField; } @Override public boolean accept(Act act) { if (timeField==null) return false; RoughTime t=act.getTime(timeField); if (t==null) return acceptNull; return interval.contains(t.getTime()); } }