I realize this is just timing logic, but there is enough  of it that I wonder if it's not breaking it out, perhaps even with an abstraction (ie a startTime/endTime type thing, similar to what you do elsewhere). That might be a bit heavyweight, but the organization currently is pretty ad hoc.