-from models import MetaCreateResponse, MetaGetResponse
+from tornado_swagger_ui.tornado_swagger import swagger
+__author__ = '__serena__'
+# name: name of the POD e.g. zte-1
+# mode: metal or virtual
+# details: any detail
+# role: ci-pod or community-pod or single-node
+
+
+@swagger.model()
class PodCreateRequest(object):
- def __init__(self, name='', mode='', details=''):
+ def __init__(self, name, mode='', details='', role=""):
self.name = name
self.mode = mode
self.details = details
+ self.role = role
def format(self):
return {
"name": self.name,
"mode": self.mode,
"details": self.details,
+ "role": self.role,
}
- @staticmethod
- def from_dict(req_dict):
- if req_dict is None:
- return None
-
- req = PodCreateRequest()
- req.name = req_dict.get('name')
- req.mode = req_dict.get('mode')
- req.details = req_dict.get('details')
- return req
-
+@swagger.model()
class Pod(PodCreateRequest):
- """ describes a POD platform """
- def __init__(self, name='', mode='', details='', _id='', create_date=''):
- super(Pod, self).__init__(name, mode, details)
+ def __init__(self,
+ name='', mode='', details='',
+ role="", _id='', create_date=''):
+ super(Pod, self).__init__(name, mode, details, role)
self._id = _id
self.creation_date = create_date
@staticmethod
- def pod_from_dict(pod_dict):
+ def from_dict(pod_dict):
if pod_dict is None:
return None
p.name = pod_dict.get('name')
p.mode = pod_dict.get('mode')
p.details = pod_dict.get('details')
+ p.role = pod_dict.get('role')
return p
def format(self):
return f
-class PodCreateResponse(object):
- def __init__(self, pod=None, meta=None):
- self.pod = pod
- self.meta = meta
-
- @staticmethod
- def from_dict(res_dict):
- if res_dict is None:
- return None
-
- res = PodCreateResponse()
- res.pod = Pod.pod_from_dict(res_dict.get('pod'))
- res.meta = MetaCreateResponse.from_dict(res_dict.get('meta'))
- return res
-
-
-class PodGetResponse(PodCreateRequest):
- def __init__(self, name='', mode='', details='', create_date=''):
- self.creation_date = create_date
- super(PodGetResponse, self).__init__(name, mode, details)
-
- @staticmethod
- def from_dict(req_dict):
- if req_dict is None:
- return None
-
- res = PodGetResponse()
- res.creation_date = str(req_dict.get('creation_date'))
- res.name = req_dict.get('name')
- res.mode = req_dict.get('mode')
- res.details = req_dict.get('details')
- return res
-
-
-class PodsGetResponse(object):
- def __init__(self, pods=[], meta=None):
+@swagger.model()
+class Pods(object):
+ """
+ @ptype pods: C{list} of L{Pod}
+ """
+ def __init__(self, pods=list()):
self.pods = pods
- self.meta = meta
@staticmethod
def from_dict(res_dict):
if res_dict is None:
return None
- res = PodsGetResponse()
+ res = Pods()
for pod in res_dict.get('pods'):
- res.pods.append(PodGetResponse.from_dict(pod))
- res.meta = MetaGetResponse.from_dict(res_dict.get('meta'))
+ res.pods.append(Pod.from_dict(pod))
return res