blob: bc2967f4022076b787a673f4a7c3d9ab9fa6f9e7 [file] [log] [blame]
Sapan Bhatia643b7092014-01-28 14:31:06 -05001from rest_framework.decorators import api_view
2from rest_framework.response import Response
3from rest_framework.reverse import reverse
4from rest_framework import serializers
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05005from rest_framework import generics
Sapan Bhatia643b7092014-01-28 14:31:06 -05006from core.models import *
7from django.forms import widgets
8
9"""
10 Schema of the generator object:
11 all: Set of all Model objects
12 all_if(regex): Set of Model objects that match regex
13
14 Model object:
15 plural: English plural of object name
16 camel: CamelCase version of object name
17 refs: list of references to other Model objects
18 props: list of properties minus refs
19
20 TODO: Deal with subnets
21"""
22
23# Based on api_root.py
24
25@api_view(['GET'])
26def api_root(request, format=None):
27 return Response({
28 'serviceattributes': reverse('serviceattribute-list', request=request, format=format),
29 'images': reverse('image-list', request=request, format=format),
30 'networkparameters': reverse('networkparameter-list', request=request, format=format),
31 'sites': reverse('site-list', request=request, format=format),
32 'sliceroles': reverse('slicerole-list', request=request, format=format),
33 'tags': reverse('tag-list', request=request, format=format),
34 'invoices': reverse('invoice-list', request=request, format=format),
Sapan Bhatia643b7092014-01-28 14:31:06 -050035 'planetstackroles': reverse('planetstackrole-list', request=request, format=format),
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050036 'sliceprivileges': reverse('sliceprivilege-list', request=request, format=format),
Sapan Bhatia643b7092014-01-28 14:31:06 -050037 'networkslivers': reverse('networksliver-list', request=request, format=format),
Sapan Bhatia643b7092014-01-28 14:31:06 -050038 'slices': reverse('slice-list', request=request, format=format),
39 'networks': reverse('network-list', request=request, format=format),
40 'services': reverse('service-list', request=request, format=format),
41 'serviceclasses': reverse('serviceclass-list', request=request, format=format),
42 'siteroles': reverse('siterole-list', request=request, format=format),
43 'charges': reverse('charge-list', request=request, format=format),
44 'roles': reverse('role-list', request=request, format=format),
45 'usableobjects': reverse('usableobject-list', request=request, format=format),
46 'slivers': reverse('sliver-list', request=request, format=format),
47 'nodes': reverse('node-list', request=request, format=format),
48 'reservedresources': reverse('reservedresource-list', request=request, format=format),
49 'payments': reverse('payment-list', request=request, format=format),
50 'networkslices': reverse('networkslice-list', request=request, format=format),
51 'planetstackprivileges': reverse('planetstackprivilege-list', request=request, format=format),
52 'users': reverse('user-list', request=request, format=format),
53 'deployments': reverse('deployment-list', request=request, format=format),
54 'reservations': reverse('reservation-list', request=request, format=format),
55 'siteprivileges': reverse('siteprivilege-list', request=request, format=format),
Sapan Bhatia643b7092014-01-28 14:31:06 -050056 'planetstacks': reverse('planetstack-list', request=request, format=format),
57 'accounts': reverse('account-list', request=request, format=format),
58 'networkparametertypes': reverse('networkparametertype-list', request=request, format=format),
59 'sitedeploymentses': reverse('sitedeployments-list', request=request, format=format),
60 'deploymentprivileges': reverse('deploymentprivilege-list', request=request, format=format),
61 'deploymentroles': reverse('deploymentrole-list', request=request, format=format),
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050062 'projects': reverse('project-list', request=request, format=format),
Sapan Bhatia643b7092014-01-28 14:31:06 -050063 'slicetags': reverse('slicetag-list', request=request, format=format),
64 'networktemplates': reverse('networktemplate-list', request=request, format=format),
65 'routers': reverse('router-list', request=request, format=format),
66 'serviceresources': reverse('serviceresource-list', request=request, format=format),
67
68 })
69
70# Based on serializers.py
71
72
73
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050074class ServiceAttributeSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -050075 id = serializers.Field()
76
77
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050078 service = serializers.HyperlinkedRelatedField(read_only=True, view_name='service-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -050079
80
81 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050082 model = ServiceAttribute
Sapan Bhatia60af03d2014-01-28 20:12:08 -050083 fields = ('id','created','updated','enacted','name','value','service',)
Sapan Bhatia643b7092014-01-28 14:31:06 -050084
85
86class ImageSerializer(serializers.HyperlinkedModelSerializer):
87 id = serializers.Field()
88
Sapan Bhatiabe42fba2014-01-28 23:53:49 -050089
90 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
91
92
Sapan Bhatia643b7092014-01-28 14:31:06 -050093 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050094 model = Image
Sapan Bhatiabe42fba2014-01-28 23:53:49 -050095 fields = ('id','created','updated','enacted','image_id','name','disk_format','container_format','slivers',)
Sapan Bhatia643b7092014-01-28 14:31:06 -050096
97
Sapan Bhatiacdd90b72014-01-28 20:03:13 -050098class NetworkParameterSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -050099 id = serializers.Field()
100
101 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500102 model = NetworkParameter
Sapan Bhatia643b7092014-01-28 14:31:06 -0500103 fields = ('id','created','updated','enacted','parameter','value','content_type','object_id',)
104
105
106class SiteSerializer(serializers.HyperlinkedModelSerializer):
107 id = serializers.Field()
108
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500109
110 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
111
112
113
114 nodes = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='node-detail')
115
116
117
118 users = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='user-detail')
119
120
121
122 site_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='siteprivilege-detail')
123
124
125
126 accounts = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='account-detail')
127
128
Sapan Bhatia643b7092014-01-28 14:31:06 -0500129 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500130 model = Site
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500131 fields = ('id','created','updated','enacted','tenant_id','name','site_url','enabled','location','longitude','latitude','login_base','is_public','abbreviated_name','slices','nodes','users','site_privileges','accounts',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500132
133
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500134class SliceRoleSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500135 id = serializers.Field()
136
137 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500138 model = SliceRole
Sapan Bhatia643b7092014-01-28 14:31:06 -0500139 fields = ('id','created','updated','enacted','role',)
140
141
142class TagSerializer(serializers.HyperlinkedModelSerializer):
143 id = serializers.Field()
144
145
146 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
147
148
149
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500150 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
151
152
153
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500154 service = serializers.HyperlinkedRelatedField(read_only=True, view_name='service-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500155
156
157
158 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
159
160
161
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500162 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
163
164
165
Sapan Bhatia643b7092014-01-28 14:31:06 -0500166 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
167
168
169
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500170 sliver = serializers.HyperlinkedRelatedField(read_only=True, view_name='sliver-detail')
171
172
173
Sapan Bhatia643b7092014-01-28 14:31:06 -0500174 nodes = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='node-detail')
175
176
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500177
178 node = serializers.HyperlinkedRelatedField(read_only=True, view_name='node-detail')
179
180
Sapan Bhatia643b7092014-01-28 14:31:06 -0500181 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500182 model = Tag
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500183 fields = ('id','created','updated','enacted','name','value','content_type','object_id','sites','site','service','slices','slice','slivers','sliver','nodes','node',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500184
185
186class InvoiceSerializer(serializers.HyperlinkedModelSerializer):
187 id = serializers.Field()
188
189
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500190 account = serializers.HyperlinkedRelatedField(read_only=True, view_name='account-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500191
192
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500193
194 charges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='charge-detail')
195
196
Sapan Bhatia643b7092014-01-28 14:31:06 -0500197 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500198 model = Invoice
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500199 fields = ('id','created','updated','enacted','date','account','charges',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500200
201
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500202class PlanetStackRoleSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500203 id = serializers.Field()
204
205 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500206 model = PlanetStackRole
Sapan Bhatia643b7092014-01-28 14:31:06 -0500207 fields = ('id','created','updated','enacted','role',)
208
209
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500210class SlicePrivilegeSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500211 id = serializers.Field()
212
213
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500214 user = serializers.HyperlinkedRelatedField(read_only=True, view_name='user-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500215
216
217
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500218 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
219
220
221
222 role = serializers.HyperlinkedRelatedField(read_only=True, view_name='role-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500223
224
225 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500226 model = SlicePrivilege
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500227 fields = ('id','created','updated','enacted','user','slice','role',)
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500228
229
230class NetworkSliverSerializer(serializers.HyperlinkedModelSerializer):
231 id = serializers.Field()
232
233
234 network = serializers.HyperlinkedRelatedField(read_only=True, view_name='network-detail')
235
236
237
238 sliver = serializers.HyperlinkedRelatedField(read_only=True, view_name='sliver-detail')
239
240
241 class Meta:
242 model = NetworkSliver
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500243 fields = ('id','created','updated','enacted','ip','port_id','network','sliver',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500244
245
Sapan Bhatia643b7092014-01-28 14:31:06 -0500246class SliceSerializer(serializers.HyperlinkedModelSerializer):
247 id = serializers.Field()
248
249
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500250 slice_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliceprivilege-detail')
251
252
253
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500254 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500255
256
257
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500258 service = serializers.HyperlinkedRelatedField(read_only=True, view_name='service-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500259
260
261
262 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
263
264
265
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500266 network = serializers.HyperlinkedRelatedField(read_only=True, view_name='network-detail')
267
268
269
Sapan Bhatia643b7092014-01-28 14:31:06 -0500270 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
271
272
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500273
274 network = serializers.HyperlinkedRelatedField(read_only=True, view_name='network-detail')
275
276
277
278 charges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='charge-detail')
279
280
281
282 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
283
284
285
286 reservations = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='reservation-detail')
287
288
289
290 slicetags = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slicetag-detail')
291
292
Sapan Bhatia643b7092014-01-28 14:31:06 -0500293 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500294 model = Slice
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500295 fields = ('id','created','updated','enacted','tenant_id','name','enabled','omf_friendly','description','slice_url','network_id','router_id','subnet_id','serviceClass','creator','slice_privileges','site','service','networks','network','networks','network','charges','slivers','reservations','slicetags',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500296
297
298class NetworkSerializer(serializers.HyperlinkedModelSerializer):
299 id = serializers.Field()
300
301
302 routers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='router-detail')
303
304
305
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500306 router = serializers.HyperlinkedRelatedField(read_only=True, view_name='router-detail')
307
308
309
Sapan Bhatia643b7092014-01-28 14:31:06 -0500310 routers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='router-detail')
311
312
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500313
314 router = serializers.HyperlinkedRelatedField(read_only=True, view_name='router-detail')
315
316
Sapan Bhatia643b7092014-01-28 14:31:06 -0500317 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500318 model = Network
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500319 fields = ('id','created','updated','enacted','name','template','subnet','ports','labels','owner','guaranteedBandwidth','permitAllSlices','network_id','router_id','subnet_id','routers','router','routers','router',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500320
321
322class ServiceSerializer(serializers.HyperlinkedModelSerializer):
323 id = serializers.Field()
324
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500325
326 serviceattributes = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='serviceattribute-detail')
327
328
329
330 tags = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='tag-detail')
331
332
333
334 service = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
335
336
Sapan Bhatia643b7092014-01-28 14:31:06 -0500337 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500338 model = Service
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500339 fields = ('id','created','updated','enacted','description','enabled','name','versionNumber','published','serviceattributes','tags','service',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500340
341
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500342class ServiceClassSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500343 id = serializers.Field()
344
345 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500346 model = ServiceClass
Sapan Bhatia643b7092014-01-28 14:31:06 -0500347 fields = ('id','created','updated','enacted','name','description','commitment','membershipFee','membershipFeeMonths','upgradeRequiresApproval',)
348
349
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500350class SiteRoleSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500351 id = serializers.Field()
352
353 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500354 model = SiteRole
Sapan Bhatia643b7092014-01-28 14:31:06 -0500355 fields = ('id','created','updated','enacted','role',)
356
357
358class ChargeSerializer(serializers.HyperlinkedModelSerializer):
359 id = serializers.Field()
360
361
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500362 account = serializers.HyperlinkedRelatedField(read_only=True, view_name='account-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500363
364
365
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500366 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500367
368
369
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500370 invoice = serializers.HyperlinkedRelatedField(read_only=True, view_name='invoice-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500371
372
373 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500374 model = Charge
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500375 fields = ('id','created','updated','enacted','kind','state','date','object','amount','coreHours','account','slice','invoice',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500376
377
378class RoleSerializer(serializers.HyperlinkedModelSerializer):
379 id = serializers.Field()
380
381 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500382 model = Role
Sapan Bhatia643b7092014-01-28 14:31:06 -0500383 fields = ('id','created','updated','enacted','role_type','role','description','content_type',)
384
385
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500386class UsableObjectSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500387 id = serializers.Field()
388
389 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500390 model = UsableObject
Sapan Bhatia643b7092014-01-28 14:31:06 -0500391 fields = ('id','created','updated','enacted','name',)
392
393
394class SliverSerializer(serializers.HyperlinkedModelSerializer):
395 id = serializers.Field()
396
397
398 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
399
400
401
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500402 network = serializers.HyperlinkedRelatedField(read_only=True, view_name='network-detail')
403
404
405
406 serviceclass = serializers.HyperlinkedRelatedField(read_only=True, view_name='serviceclass-detail')
407
408
409
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500410 image = serializers.HyperlinkedRelatedField(read_only=True, view_name='image-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500411
412
413
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500414 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500415
416
417
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500418 node = serializers.HyperlinkedRelatedField(read_only=True, view_name='node-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500419
420
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500421
422 reservedResourrces = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='reservedresource-detail')
423
424
Sapan Bhatia643b7092014-01-28 14:31:06 -0500425 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500426 model = Sliver
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500427 fields = ('id','created','updated','enacted','instance_id','name','instance_name','ip','creator','deploymentNetwork','numberCores','networks','network','serviceclass','image','slice','node','reservedResourrces',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500428
429
430class NodeSerializer(serializers.HyperlinkedModelSerializer):
431 id = serializers.Field()
432
433
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500434 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
435
436
437
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500438 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500439
440
441
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500442 deployment = serializers.HyperlinkedRelatedField(read_only=True, view_name='deployment-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500443
444
445 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500446 model = Node
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500447 fields = ('id','created','updated','enacted','name','slivers','site','deployment',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500448
449
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500450class ReservedResourceSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500451 id = serializers.Field()
452
453
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500454 sliver = serializers.HyperlinkedRelatedField(read_only=True, view_name='sliver-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500455
456
457 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500458 model = ReservedResource
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500459 fields = ('id','created','updated','enacted','resource','quantity','reservationSet','sliver',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500460
461
462class PaymentSerializer(serializers.HyperlinkedModelSerializer):
463 id = serializers.Field()
464
465
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500466 account = serializers.HyperlinkedRelatedField(read_only=True, view_name='account-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500467
468
469 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500470 model = Payment
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500471 fields = ('id','created','updated','enacted','amount','date','account',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500472
473
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500474class NetworkSliceSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500475 id = serializers.Field()
476
477
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500478 network = serializers.HyperlinkedRelatedField(read_only=True, view_name='network-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500479
480
481
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500482 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500483
484
485 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500486 model = NetworkSlice
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500487 fields = ('id','created','updated','enacted','network','slice',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500488
489
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500490class PlanetStackPrivilegeSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500491 id = serializers.Field()
492
493
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500494 user = serializers.HyperlinkedRelatedField(read_only=True, view_name='user-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500495
496
497
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500498 planetstack = serializers.HyperlinkedRelatedField(read_only=True, view_name='planetstack-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500499
500
501
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500502 role = serializers.HyperlinkedRelatedField(read_only=True, view_name='role-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500503
504
505 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500506 model = PlanetStackPrivilege
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500507 fields = ('id','created','updated','enacted','user','planetstack','role',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500508
509
510class UserSerializer(serializers.HyperlinkedModelSerializer):
511 id = serializers.Field()
512
513
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500514 slice_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliceprivilege-detail')
515
516
517
518 planetstack_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='planetstackprivilege-detail')
519
520
521
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500522 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500523
524
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500525
526 site_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='siteprivilege-detail')
527
528
529
530 deployment_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='deploymentprivilege-detail')
531
532
Sapan Bhatia643b7092014-01-28 14:31:06 -0500533 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500534 model = User
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500535 fields = ('id','password','last_login','email','username','kuser_id','firstname','lastname','phone','user_url','public_key','is_active','is_admin','is_staff','is_readonly','created','updated','enacted','timezone','slice_privileges','planetstack_privileges','site','site_privileges','deployment_privileges',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500536
537
538class DeploymentSerializer(serializers.HyperlinkedModelSerializer):
539 id = serializers.Field()
540
541
542 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
543
544
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500545
546 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
547
548
549
550 nodes = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='node-detail')
551
552
553
554 deployment_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='deploymentprivilege-detail')
555
556
Sapan Bhatia643b7092014-01-28 14:31:06 -0500557 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500558 model = Deployment
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500559 fields = ('id','created','updated','enacted','name','sites','site','nodes','deployment_privileges',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500560
561
562class ReservationSerializer(serializers.HyperlinkedModelSerializer):
563 id = serializers.Field()
564
565
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500566 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500567
568
569 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500570 model = Reservation
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500571 fields = ('id','created','updated','enacted','startTime','duration','slice',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500572
573
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500574class SitePrivilegeSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500575 id = serializers.Field()
576
577
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500578 user = serializers.HyperlinkedRelatedField(read_only=True, view_name='user-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500579
580
581
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500582 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500583
584
585
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500586 role = serializers.HyperlinkedRelatedField(read_only=True, view_name='role-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500587
588
589 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500590 model = SitePrivilege
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500591 fields = ('id','created','updated','enacted','user','site','role',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500592
593
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500594class PlanetStackSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500595 id = serializers.Field()
596
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500597
598 planetstack_privileges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='planetstackprivilege-detail')
599
600
Sapan Bhatia643b7092014-01-28 14:31:06 -0500601 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500602 model = PlanetStack
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500603 fields = ('id','created','updated','enacted','description','planetstack_privileges',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500604
605
606class AccountSerializer(serializers.HyperlinkedModelSerializer):
607 id = serializers.Field()
608
609
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500610 invoices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='invoice-detail')
611
612
613
614 charges = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='charge-detail')
615
616
617
618 payments = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='payment-detail')
619
620
621
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500622 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500623
624
625 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500626 model = Account
Sapan Bhatiabe42fba2014-01-28 23:53:49 -0500627 fields = ('id','created','updated','enacted','invoices','charges','payments','site',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500628
629
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500630class NetworkParameterTypeSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500631 id = serializers.Field()
632
633 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500634 model = NetworkParameterType
Sapan Bhatia643b7092014-01-28 14:31:06 -0500635 fields = ('id','created','updated','enacted','name','description',)
636
637
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500638class SiteDeploymentsSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500639 id = serializers.Field()
640
641
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500642 site = serializers.HyperlinkedRelatedField(read_only=True, view_name='site-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500643
644
645
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500646 deployment = serializers.HyperlinkedRelatedField(read_only=True, view_name='deployment-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500647
648
649 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500650 model = SiteDeployments
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500651 fields = ('id','created','updated','enacted','site','deployment',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500652
653
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500654class DeploymentPrivilegeSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500655 id = serializers.Field()
656
657
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500658 user = serializers.HyperlinkedRelatedField(read_only=True, view_name='user-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500659
660
661
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500662 deployment = serializers.HyperlinkedRelatedField(read_only=True, view_name='deployment-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500663
664
665
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500666 role = serializers.HyperlinkedRelatedField(read_only=True, view_name='role-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500667
668
669 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500670 model = DeploymentPrivilege
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500671 fields = ('id','created','updated','enacted','user','deployment','role',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500672
673
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500674class DeploymentRoleSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500675 id = serializers.Field()
676
677 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500678 model = DeploymentRole
Sapan Bhatia643b7092014-01-28 14:31:06 -0500679 fields = ('id','created','updated','enacted','role',)
680
681
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500682class ProjectSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500683 id = serializers.Field()
684
685 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500686 model = Project
687 fields = ('id','created','updated','enacted','name',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500688
689
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500690class SliceTagSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500691 id = serializers.Field()
692
693
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500694 slice = serializers.HyperlinkedRelatedField(read_only=True, view_name='slice-detail')
Sapan Bhatia643b7092014-01-28 14:31:06 -0500695
696
697 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500698 model = SliceTag
Sapan Bhatia60af03d2014-01-28 20:12:08 -0500699 fields = ('id','created','updated','enacted','name','value','slice',)
Sapan Bhatia643b7092014-01-28 14:31:06 -0500700
701
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500702class NetworkTemplateSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500703 id = serializers.Field()
704
705 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500706 model = NetworkTemplate
Sapan Bhatia643b7092014-01-28 14:31:06 -0500707 fields = ('id','created','updated','enacted','name','description','guaranteedBandwidth','visibility','translation','sharedNetworkName','sharedNetworkId',)
708
709
710class RouterSerializer(serializers.HyperlinkedModelSerializer):
711 id = serializers.Field()
712
713 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500714 model = Router
Sapan Bhatia643b7092014-01-28 14:31:06 -0500715 fields = ('id','created','updated','enacted','name','owner',)
716
717
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500718class ServiceResourceSerializer(serializers.HyperlinkedModelSerializer):
Sapan Bhatia643b7092014-01-28 14:31:06 -0500719 id = serializers.Field()
720
721 class Meta:
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500722 model = ServiceResource
Sapan Bhatia643b7092014-01-28 14:31:06 -0500723 fields = ('id','created','updated','enacted','serviceClass','name','maxUnitsDeployment','maxUnitsNode','maxDuration','bucketInRate','bucketMaxSize','cost','calendarReservable',)
724
725
726serializerLookUp = {
727
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500728 ServiceAttribute: ServiceAttributeSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500729
730 Image: ImageSerializer,
731
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500732 NetworkParameter: NetworkParameterSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500733
734 Site: SiteSerializer,
735
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500736 SliceRole: SliceRoleSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500737
738 Tag: TagSerializer,
739
740 Invoice: InvoiceSerializer,
741
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500742 PlanetStackRole: PlanetStackRoleSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500743
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500744 SlicePrivilege: SlicePrivilegeSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500745
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500746 NetworkSliver: NetworkSliverSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500747
748 Slice: SliceSerializer,
749
750 Network: NetworkSerializer,
751
752 Service: ServiceSerializer,
753
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500754 ServiceClass: ServiceClassSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500755
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500756 SiteRole: SiteRoleSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500757
758 Charge: ChargeSerializer,
759
760 Role: RoleSerializer,
761
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500762 UsableObject: UsableObjectSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500763
764 Sliver: SliverSerializer,
765
766 Node: NodeSerializer,
767
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500768 ReservedResource: ReservedResourceSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500769
770 Payment: PaymentSerializer,
771
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500772 NetworkSlice: NetworkSliceSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500773
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500774 PlanetStackPrivilege: PlanetStackPrivilegeSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500775
776 User: UserSerializer,
777
778 Deployment: DeploymentSerializer,
779
780 Reservation: ReservationSerializer,
781
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500782 SitePrivilege: SitePrivilegeSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500783
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500784 PlanetStack: PlanetStackSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500785
786 Account: AccountSerializer,
787
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500788 NetworkParameterType: NetworkParameterTypeSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500789
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500790 SiteDeployments: SiteDeploymentsSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500791
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500792 DeploymentPrivilege: DeploymentPrivilegeSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500793
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500794 DeploymentRole: DeploymentRoleSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500795
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500796 Project: ProjectSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500797
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500798 SliceTag: SliceTagSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500799
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500800 NetworkTemplate: NetworkTemplateSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500801
802 Router: RouterSerializer,
803
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500804 ServiceResource: ServiceResourceSerializer,
Sapan Bhatia643b7092014-01-28 14:31:06 -0500805
806 None: None,
807 }
808
809# Based on core/views/*.py
810
811
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500812class ServiceAttributeList(generics.ListCreateAPIView):
813 queryset = ServiceAttribute.objects.select_related().all()
814 serializer_class = ServiceAttributeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500815
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500816class ServiceAttributeDetail(generics.RetrieveUpdateDestroyAPIView):
817 queryset = ServiceAttribute.objects.select_related().all()
818 serializer_class = ServiceAttributeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500819
820
821
822class ImageList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500823 queryset = Image.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500824 serializer_class = ImageSerializer
825
826class ImageDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500827 queryset = Image.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500828 serializer_class = ImageSerializer
829
830
831
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500832class NetworkParameterList(generics.ListCreateAPIView):
833 queryset = NetworkParameter.objects.select_related().all()
834 serializer_class = NetworkParameterSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500835
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500836class NetworkParameterDetail(generics.RetrieveUpdateDestroyAPIView):
837 queryset = NetworkParameter.objects.select_related().all()
838 serializer_class = NetworkParameterSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500839
840
841
842class SiteList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500843 queryset = Site.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500844 serializer_class = SiteSerializer
845
846class SiteDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500847 queryset = Site.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500848 serializer_class = SiteSerializer
849
850
851
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500852class SliceRoleList(generics.ListCreateAPIView):
853 queryset = SliceRole.objects.select_related().all()
854 serializer_class = SliceRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500855
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500856class SliceRoleDetail(generics.RetrieveUpdateDestroyAPIView):
857 queryset = SliceRole.objects.select_related().all()
858 serializer_class = SliceRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500859
860
861
862class TagList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500863 queryset = Tag.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500864 serializer_class = TagSerializer
865
866class TagDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500867 queryset = Tag.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500868 serializer_class = TagSerializer
869
870
871
872class InvoiceList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500873 queryset = Invoice.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500874 serializer_class = InvoiceSerializer
875
876class InvoiceDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500877 queryset = Invoice.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500878 serializer_class = InvoiceSerializer
879
880
881
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500882class PlanetStackRoleList(generics.ListCreateAPIView):
883 queryset = PlanetStackRole.objects.select_related().all()
884 serializer_class = PlanetStackRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500885
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500886class PlanetStackRoleDetail(generics.RetrieveUpdateDestroyAPIView):
887 queryset = PlanetStackRole.objects.select_related().all()
888 serializer_class = PlanetStackRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500889
890
891
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500892class SlicePrivilegeList(generics.ListCreateAPIView):
893 queryset = SlicePrivilege.objects.select_related().all()
894 serializer_class = SlicePrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500895
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500896class SlicePrivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
897 queryset = SlicePrivilege.objects.select_related().all()
898 serializer_class = SlicePrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500899
900
901
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500902class NetworkSliverList(generics.ListCreateAPIView):
903 queryset = NetworkSliver.objects.select_related().all()
904 serializer_class = NetworkSliverSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500905
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500906class NetworkSliverDetail(generics.RetrieveUpdateDestroyAPIView):
907 queryset = NetworkSliver.objects.select_related().all()
908 serializer_class = NetworkSliverSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500909
910
911
912class SliceList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500913 queryset = Slice.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500914 serializer_class = SliceSerializer
915
916class SliceDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500917 queryset = Slice.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500918 serializer_class = SliceSerializer
919
920
921
922class NetworkList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500923 queryset = Network.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500924 serializer_class = NetworkSerializer
925
926class NetworkDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500927 queryset = Network.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500928 serializer_class = NetworkSerializer
929
930
931
932class ServiceList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500933 queryset = Service.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500934 serializer_class = ServiceSerializer
935
936class ServiceDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500937 queryset = Service.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500938 serializer_class = ServiceSerializer
939
940
941
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500942class ServiceClassList(generics.ListCreateAPIView):
943 queryset = ServiceClass.objects.select_related().all()
944 serializer_class = ServiceClassSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500945
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500946class ServiceClassDetail(generics.RetrieveUpdateDestroyAPIView):
947 queryset = ServiceClass.objects.select_related().all()
948 serializer_class = ServiceClassSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500949
950
951
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500952class SiteRoleList(generics.ListCreateAPIView):
953 queryset = SiteRole.objects.select_related().all()
954 serializer_class = SiteRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500955
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500956class SiteRoleDetail(generics.RetrieveUpdateDestroyAPIView):
957 queryset = SiteRole.objects.select_related().all()
958 serializer_class = SiteRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500959
960
961
962class ChargeList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500963 queryset = Charge.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500964 serializer_class = ChargeSerializer
965
966class ChargeDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500967 queryset = Charge.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500968 serializer_class = ChargeSerializer
969
970
971
972class RoleList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500973 queryset = Role.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500974 serializer_class = RoleSerializer
975
976class RoleDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500977 queryset = Role.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500978 serializer_class = RoleSerializer
979
980
981
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500982class UsableObjectList(generics.ListCreateAPIView):
983 queryset = UsableObject.objects.select_related().all()
984 serializer_class = UsableObjectSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500985
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500986class UsableObjectDetail(generics.RetrieveUpdateDestroyAPIView):
987 queryset = UsableObject.objects.select_related().all()
988 serializer_class = UsableObjectSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -0500989
990
991
992class SliverList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500993 queryset = Sliver.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500994 serializer_class = SliverSerializer
995
996class SliverDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -0500997 queryset = Sliver.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -0500998 serializer_class = SliverSerializer
999
1000
1001
1002class NodeList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001003 queryset = Node.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001004 serializer_class = NodeSerializer
1005
1006class NodeDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001007 queryset = Node.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001008 serializer_class = NodeSerializer
1009
1010
1011
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001012class ReservedResourceList(generics.ListCreateAPIView):
1013 queryset = ReservedResource.objects.select_related().all()
1014 serializer_class = ReservedResourceSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001015
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001016class ReservedResourceDetail(generics.RetrieveUpdateDestroyAPIView):
1017 queryset = ReservedResource.objects.select_related().all()
1018 serializer_class = ReservedResourceSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001019
1020
1021
1022class PaymentList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001023 queryset = Payment.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001024 serializer_class = PaymentSerializer
1025
1026class PaymentDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001027 queryset = Payment.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001028 serializer_class = PaymentSerializer
1029
1030
1031
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001032class NetworkSliceList(generics.ListCreateAPIView):
1033 queryset = NetworkSlice.objects.select_related().all()
1034 serializer_class = NetworkSliceSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001035
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001036class NetworkSliceDetail(generics.RetrieveUpdateDestroyAPIView):
1037 queryset = NetworkSlice.objects.select_related().all()
1038 serializer_class = NetworkSliceSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001039
1040
1041
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001042class PlanetStackPrivilegeList(generics.ListCreateAPIView):
1043 queryset = PlanetStackPrivilege.objects.select_related().all()
1044 serializer_class = PlanetStackPrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001045
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001046class PlanetStackPrivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
1047 queryset = PlanetStackPrivilege.objects.select_related().all()
1048 serializer_class = PlanetStackPrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001049
1050
1051
1052class UserList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001053 queryset = User.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001054 serializer_class = UserSerializer
1055
1056class UserDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001057 queryset = User.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001058 serializer_class = UserSerializer
1059
1060
1061
1062class DeploymentList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001063 queryset = Deployment.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001064 serializer_class = DeploymentSerializer
1065
1066class DeploymentDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001067 queryset = Deployment.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001068 serializer_class = DeploymentSerializer
1069
1070
1071
1072class ReservationList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001073 queryset = Reservation.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001074 serializer_class = ReservationSerializer
1075
1076class ReservationDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001077 queryset = Reservation.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001078 serializer_class = ReservationSerializer
1079
1080
1081
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001082class SitePrivilegeList(generics.ListCreateAPIView):
1083 queryset = SitePrivilege.objects.select_related().all()
1084 serializer_class = SitePrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001085
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001086class SitePrivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
1087 queryset = SitePrivilege.objects.select_related().all()
1088 serializer_class = SitePrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001089
1090
1091
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001092class PlanetStackList(generics.ListCreateAPIView):
1093 queryset = PlanetStack.objects.select_related().all()
1094 serializer_class = PlanetStackSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001095
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001096class PlanetStackDetail(generics.RetrieveUpdateDestroyAPIView):
1097 queryset = PlanetStack.objects.select_related().all()
1098 serializer_class = PlanetStackSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001099
1100
1101
1102class AccountList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001103 queryset = Account.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001104 serializer_class = AccountSerializer
1105
1106class AccountDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001107 queryset = Account.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001108 serializer_class = AccountSerializer
1109
1110
1111
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001112class NetworkParameterTypeList(generics.ListCreateAPIView):
1113 queryset = NetworkParameterType.objects.select_related().all()
1114 serializer_class = NetworkParameterTypeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001115
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001116class NetworkParameterTypeDetail(generics.RetrieveUpdateDestroyAPIView):
1117 queryset = NetworkParameterType.objects.select_related().all()
1118 serializer_class = NetworkParameterTypeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001119
1120
1121
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001122class SiteDeploymentsList(generics.ListCreateAPIView):
1123 queryset = SiteDeployments.objects.select_related().all()
1124 serializer_class = SiteDeploymentsSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001125
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001126class SiteDeploymentsDetail(generics.RetrieveUpdateDestroyAPIView):
1127 queryset = SiteDeployments.objects.select_related().all()
1128 serializer_class = SiteDeploymentsSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001129
1130
1131
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001132class DeploymentPrivilegeList(generics.ListCreateAPIView):
1133 queryset = DeploymentPrivilege.objects.select_related().all()
1134 serializer_class = DeploymentPrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001135
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001136class DeploymentPrivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
1137 queryset = DeploymentPrivilege.objects.select_related().all()
1138 serializer_class = DeploymentPrivilegeSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001139
1140
1141
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001142class DeploymentRoleList(generics.ListCreateAPIView):
1143 queryset = DeploymentRole.objects.select_related().all()
1144 serializer_class = DeploymentRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001145
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001146class DeploymentRoleDetail(generics.RetrieveUpdateDestroyAPIView):
1147 queryset = DeploymentRole.objects.select_related().all()
1148 serializer_class = DeploymentRoleSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001149
1150
1151
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001152class ProjectList(generics.ListCreateAPIView):
1153 queryset = Project.objects.select_related().all()
1154 serializer_class = ProjectSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001155
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001156class ProjectDetail(generics.RetrieveUpdateDestroyAPIView):
1157 queryset = Project.objects.select_related().all()
1158 serializer_class = ProjectSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001159
1160
1161
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001162class SliceTagList(generics.ListCreateAPIView):
1163 queryset = SliceTag.objects.select_related().all()
1164 serializer_class = SliceTagSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001165
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001166class SliceTagDetail(generics.RetrieveUpdateDestroyAPIView):
1167 queryset = SliceTag.objects.select_related().all()
1168 serializer_class = SliceTagSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001169
1170
1171
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001172class NetworkTemplateList(generics.ListCreateAPIView):
1173 queryset = NetworkTemplate.objects.select_related().all()
1174 serializer_class = NetworkTemplateSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001175
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001176class NetworkTemplateDetail(generics.RetrieveUpdateDestroyAPIView):
1177 queryset = NetworkTemplate.objects.select_related().all()
1178 serializer_class = NetworkTemplateSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001179
1180
1181
1182class RouterList(generics.ListCreateAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001183 queryset = Router.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001184 serializer_class = RouterSerializer
1185
1186class RouterDetail(generics.RetrieveUpdateDestroyAPIView):
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001187 queryset = Router.objects.select_related().all()
Sapan Bhatia643b7092014-01-28 14:31:06 -05001188 serializer_class = RouterSerializer
1189
1190
1191
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001192class ServiceResourceList(generics.ListCreateAPIView):
1193 queryset = ServiceResource.objects.select_related().all()
1194 serializer_class = ServiceResourceSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001195
Sapan Bhatiacdd90b72014-01-28 20:03:13 -05001196class ServiceResourceDetail(generics.RetrieveUpdateDestroyAPIView):
1197 queryset = ServiceResource.objects.select_related().all()
1198 serializer_class = ServiceResourceSerializer
Sapan Bhatia643b7092014-01-28 14:31:06 -05001199
1200
1201