summaryrefslogtreecommitdiff
path: root/obsapi/jobhist.py
diff options
context:
space:
mode:
Diffstat (limited to 'obsapi/jobhist.py')
-rw-r--r--obsapi/jobhist.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/obsapi/jobhist.py b/obsapi/jobhist.py
new file mode 100644
index 0000000..be4577f
--- /dev/null
+++ b/obsapi/jobhist.py
@@ -0,0 +1,37 @@
+# -*- coding: utf-8 -*-
+
+from lxml import etree
+from datetime import datetime
+from obsapi.helpers import xml2etree
+
+
+class JobHist():
+
+ def __init__(self, element):
+ self.root = xml2etree(element)
+
+ def __str__(self):
+ return self.xml
+
+ def __getattr__(self, attr):
+ value = self.root.get(attr)
+ if value is None:
+ raise AttributeError
+
+ return value
+
+ @property
+ def starttime(self):
+ return datetime.fromtimestamp(int(self.root.get('starttime')))
+
+ @property
+ def endtime(self):
+ return datetime.fromtimestamp(int(self.root.get('endtime')))
+
+ @property
+ def readytime(self):
+ return datetime.fromtimestamp(int(self.root.get('readytime')))
+
+ @property
+ def xml(self):
+ return etree.tostring(self.root)