/
TaskRun.py
32 lines (25 loc) · 872 Bytes
/
TaskRun.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from Utils import dt2Epoch
class TaskRun:
"""
Represents a run of a Task. Normally a Task runs only once.
However, if there is an error, it can run multiple times.
"""
def __init__(self, tid, startDt, slaveId, slaveHost):
self.mTid = tid
self.mStartDt = startDt
self.mEndDt = None
self.mSlaveId = slaveId
self.mSlaveHost = slaveHost
def tid(self):
return self.mTid
def setEndDt(self, dt):
self.mEndDt = dt
def jsonDict(self):
return {
"tid": self.tid(),
"startEpochSeconds": dt2Epoch(self.mStartDt),
"endEpochSeconds": dt2Epoch(self.mEndDt)
}
def __repr__(self):
return "%s on %s|%s (%s-%s)" % (self.tid(), self.mSlaveId, self.mSlaveHost,
self.mStartDt, self.mEndDt)