2 from opnfv_testapi.tornado_swagger import swagger
5 def list_default(value):
6 return value if value else list()
9 def dict_default(value):
10 return value if value else dict()
14 class ScenarioTI(models.ModelBase):
15 def __init__(self, date=None, status='silver'):
21 class ScenarioScore(models.ModelBase):
22 def __init__(self, date=None, score='0'):
28 class ScenarioProject(models.ModelBase):
31 @ptype customs: C{list} of L{string}
33 @ptype scores: C{list} of L{ScenarioScore}
34 @property trust_indicators:
35 @ptype trust_indicators: C{list} of L{ScenarioTI}
41 trust_indicators=None):
42 self.project = project
43 self.customs = list_default(customs)
44 self.scores = list_default(scores)
45 self.trust_indicators = list_default(trust_indicators)
49 return {'scores': ScenarioScore,
50 'trust_indicators': ScenarioTI}
54 class ScenarioVersion(models.ModelBase):
57 @ptype projects: C{list} of L{ScenarioProject}
59 def __init__(self, version=None, projects=None):
60 self.version = version
61 self.projects = list_default(projects)
65 return {'projects': ScenarioProject}
69 class ScenarioInstaller(models.ModelBase):
72 @ptype versions: C{list} of L{ScenarioVersion}
74 def __init__(self, installer=None, versions=None):
75 self.installer = installer
76 self.versions = list_default(versions)
80 return {'versions': ScenarioVersion}
84 class ScenarioCreateRequest(models.ModelBase):
87 @ptype installers: C{list} of L{ScenarioInstaller}
89 def __init__(self, name='', installers=None):
91 self.installers = list_default(installers)
95 return {'installers': ScenarioInstaller}
99 class ScenarioUpdateRequest(models.ModelBase):
101 @property field: update field
102 @property op: add/delete/update
103 @property locate: information used to locate the field
104 @property term: new value
106 def __init__(self, field=None, op=None, locate=None, term=None):
109 self.locate = dict_default(locate)
110 self.term = dict_default(term)
114 class Scenario(models.ModelBase):
116 @property installers:
117 @ptype installers: C{list} of L{ScenarioInstaller}
119 def __init__(self, name='', create_date='', _id='', installers=None):
122 self.creation_date = create_date
123 self.installers = list_default(installers)
127 return {'installers': ScenarioInstaller}
131 class Scenarios(models.ModelBase):
134 @ptype scenarios: C{list} of L{Scenario}
137 self.scenarios = list()
141 return {'scenarios': Scenario}