blob: 27f668553123b353479bc8d8a50934df4c90c6ed [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
5from core.models import *
6from django.forms import widgets
7
8"""
9 Schema of the generator object:
10 all: Set of all Model objects
11 all_if(regex): Set of Model objects that match regex
12
13 Model object:
14 plural: English plural of object name
15 camel: CamelCase version of object name
16 refs: list of references to other Model objects
17 props: list of properties minus refs
18
19 TODO: Deal with subnets
20"""
21
22# Based on api_root.py
23
24@api_view(['GET'])
25def api_root(request, format=None):
26 return Response({
27 'serviceattributes': reverse('serviceattribute-list', request=request, format=format),
28 'images': reverse('image-list', request=request, format=format),
29 'networkparameters': reverse('networkparameter-list', request=request, format=format),
30 'sites': reverse('site-list', request=request, format=format),
31 'sliceroles': reverse('slicerole-list', request=request, format=format),
32 'tags': reverse('tag-list', request=request, format=format),
33 'invoices': reverse('invoice-list', request=request, format=format),
34 'sliceprivileges': reverse('sliceprivilege-list', request=request, format=format),
35 'planetstackroles': reverse('planetstackrole-list', request=request, format=format),
36 'networkslivers': reverse('networksliver-list', request=request, format=format),
37 'projects': reverse('project-list', request=request, format=format),
38 '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),
56 'singletonmodels': reverse('singletonmodel-list', request=request, format=format),
57 'planetstacks': reverse('planetstack-list', request=request, format=format),
58 'accounts': reverse('account-list', request=request, format=format),
59 'networkparametertypes': reverse('networkparametertype-list', request=request, format=format),
60 'sitedeploymentses': reverse('sitedeployments-list', request=request, format=format),
61 'deploymentprivileges': reverse('deploymentprivilege-list', request=request, format=format),
62 'deploymentroles': reverse('deploymentrole-list', request=request, format=format),
63 'plcorebases': reverse('plcorebase-list', request=request, format=format),
64 'slicetags': reverse('slicetag-list', request=request, format=format),
65 'networktemplates': reverse('networktemplate-list', request=request, format=format),
66 'routers': reverse('router-list', request=request, format=format),
67 'serviceresources': reverse('serviceresource-list', request=request, format=format),
68
69 })
70
71# Based on serializers.py
72
73
74
75class ServiceattributeSerializer(serializers.HyperlinkedModelSerializer):
76 id = serializers.Field()
77
78
79 service = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='service-detail')
80
81
82 class Meta:
83 model = serviceattribute
84 fields = ('id','created','updated','enacted','name','value',)
85
86
87class ImageSerializer(serializers.HyperlinkedModelSerializer):
88 id = serializers.Field()
89
90 class Meta:
91 model = image
92 fields = ('id','created','updated','enacted','image_id','name','disk_format','container_format',)
93
94
95class NetworkparameterSerializer(serializers.HyperlinkedModelSerializer):
96 id = serializers.Field()
97
98 class Meta:
99 model = networkparameter
100 fields = ('id','created','updated','enacted','parameter','value','content_type','object_id',)
101
102
103class SiteSerializer(serializers.HyperlinkedModelSerializer):
104 id = serializers.Field()
105
106 class Meta:
107 model = site
108 fields = ('id','created','updated','enacted','tenant_id','name','site_url','enabled','location','longitude','latitude','login_base','is_public','abbreviated_name',)
109
110
111class SliceroleSerializer(serializers.HyperlinkedModelSerializer):
112 id = serializers.Field()
113
114 class Meta:
115 model = slicerole
116 fields = ('id','created','updated','enacted','role',)
117
118
119class TagSerializer(serializers.HyperlinkedModelSerializer):
120 id = serializers.Field()
121
122
123 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
124
125
126
127 service = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='service-detail')
128
129
130
131 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
132
133
134
135 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
136
137
138
139 nodes = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='node-detail')
140
141
142 class Meta:
143 model = tag
144 fields = ('id','created','updated','enacted','name','value','content_type','object_id',)
145
146
147class InvoiceSerializer(serializers.HyperlinkedModelSerializer):
148 id = serializers.Field()
149
150
151 account = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='account-detail')
152
153
154 class Meta:
155 model = invoice
156 fields = ('id','created','updated','enacted','date',)
157
158
159class SliceprivilegeSerializer(serializers.HyperlinkedModelSerializer):
160 id = serializers.Field()
161
162
163 user = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='user-detail')
164
165
166
167 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
168
169
170
171 role = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='role-detail')
172
173
174 class Meta:
175 model = sliceprivilege
176 fields = ('id','created','updated','enacted',)
177
178
179class PlanetstackroleSerializer(serializers.HyperlinkedModelSerializer):
180 id = serializers.Field()
181
182 class Meta:
183 model = planetstackrole
184 fields = ('id','created','updated','enacted','role',)
185
186
187class NetworksliverSerializer(serializers.HyperlinkedModelSerializer):
188 id = serializers.Field()
189
190
191 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
192
193
194
195 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
196
197
198 class Meta:
199 model = networksliver
200 fields = ('id','created','updated','enacted','ip','port_id',)
201
202
203class ProjectSerializer(serializers.HyperlinkedModelSerializer):
204 id = serializers.Field()
205
206 class Meta:
207 model = project
208 fields = ('id','created','updated','enacted','name',)
209
210
211class SliceSerializer(serializers.HyperlinkedModelSerializer):
212 id = serializers.Field()
213
214
215 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
216
217
218
219 service = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='service-detail')
220
221
222
223 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
224
225
226
227 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
228
229
230 class Meta:
231 model = slice
232 fields = ('id','created','updated','enacted','tenant_id','name','enabled','omf_friendly','description','slice_url','network_id','router_id','subnet_id','serviceClass','creator',)
233
234
235class NetworkSerializer(serializers.HyperlinkedModelSerializer):
236 id = serializers.Field()
237
238
239 routers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='router-detail')
240
241
242
243 routers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='router-detail')
244
245
246 class Meta:
247 model = network
248 fields = ('id','created','updated','enacted','name','template','subnet','ports','labels','owner','guaranteedBandwidth','permitAllSlices','network_id','router_id','subnet_id',)
249
250
251class ServiceSerializer(serializers.HyperlinkedModelSerializer):
252 id = serializers.Field()
253
254 class Meta:
255 model = service
256 fields = ('id','created','updated','enacted','description','enabled','name','versionNumber','published',)
257
258
259class ServiceclassSerializer(serializers.HyperlinkedModelSerializer):
260 id = serializers.Field()
261
262 class Meta:
263 model = serviceclass
264 fields = ('id','created','updated','enacted','name','description','commitment','membershipFee','membershipFeeMonths','upgradeRequiresApproval',)
265
266
267class SiteroleSerializer(serializers.HyperlinkedModelSerializer):
268 id = serializers.Field()
269
270 class Meta:
271 model = siterole
272 fields = ('id','created','updated','enacted','role',)
273
274
275class ChargeSerializer(serializers.HyperlinkedModelSerializer):
276 id = serializers.Field()
277
278
279 account = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='account-detail')
280
281
282
283 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
284
285
286
287 invoice = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='invoice-detail')
288
289
290 class Meta:
291 model = charge
292 fields = ('id','created','updated','enacted','kind','state','date','object','amount','coreHours',)
293
294
295class RoleSerializer(serializers.HyperlinkedModelSerializer):
296 id = serializers.Field()
297
298 class Meta:
299 model = role
300 fields = ('id','created','updated','enacted','role_type','role','description','content_type',)
301
302
303class UsableobjectSerializer(serializers.HyperlinkedModelSerializer):
304 id = serializers.Field()
305
306 class Meta:
307 model = usableobject
308 fields = ('id','created','updated','enacted','name',)
309
310
311class SliverSerializer(serializers.HyperlinkedModelSerializer):
312 id = serializers.Field()
313
314
315 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
316
317
318
319 image = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='image-detail')
320
321
322
323 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
324
325
326
327 nodes = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='node-detail')
328
329
330 class Meta:
331 model = sliver
332 fields = ('id','created','updated','enacted','instance_id','name','instance_name','ip','creator','deploymentNetwork','numberCores',)
333
334
335class NodeSerializer(serializers.HyperlinkedModelSerializer):
336 id = serializers.Field()
337
338
339 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
340
341
342
343 deployment = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='deployment-detail')
344
345
346 class Meta:
347 model = node
348 fields = ('id','created','updated','enacted','name',)
349
350
351class ReservedresourceSerializer(serializers.HyperlinkedModelSerializer):
352 id = serializers.Field()
353
354
355 slivers = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='sliver-detail')
356
357
358 class Meta:
359 model = reservedresource
360 fields = ('id','created','updated','enacted','resource','quantity','reservationSet',)
361
362
363class PaymentSerializer(serializers.HyperlinkedModelSerializer):
364 id = serializers.Field()
365
366
367 account = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='account-detail')
368
369
370 class Meta:
371 model = payment
372 fields = ('id','created','updated','enacted','amount','date',)
373
374
375class NetworksliceSerializer(serializers.HyperlinkedModelSerializer):
376 id = serializers.Field()
377
378
379 networks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='network-detail')
380
381
382
383 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
384
385
386 class Meta:
387 model = networkslice
388 fields = ('id','created','updated','enacted',)
389
390
391class PlanetstackprivilegeSerializer(serializers.HyperlinkedModelSerializer):
392 id = serializers.Field()
393
394
395 user = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='user-detail')
396
397
398
399 planetstack = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='planetstack-detail')
400
401
402
403 role = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='role-detail')
404
405
406 class Meta:
407 model = planetstackprivilege
408 fields = ('id','created','updated','enacted',)
409
410
411class UserSerializer(serializers.HyperlinkedModelSerializer):
412 id = serializers.Field()
413
414
415 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
416
417
418 class Meta:
419 model = user
420 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',)
421
422
423class DeploymentSerializer(serializers.HyperlinkedModelSerializer):
424 id = serializers.Field()
425
426
427 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
428
429
430 class Meta:
431 model = deployment
432 fields = ('id','created','updated','enacted','name',)
433
434
435class ReservationSerializer(serializers.HyperlinkedModelSerializer):
436 id = serializers.Field()
437
438
439 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
440
441
442 class Meta:
443 model = reservation
444 fields = ('id','created','updated','enacted','startTime','duration',)
445
446
447class SiteprivilegeSerializer(serializers.HyperlinkedModelSerializer):
448 id = serializers.Field()
449
450
451 user = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='user-detail')
452
453
454
455 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
456
457
458
459 role = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='role-detail')
460
461
462 class Meta:
463 model = siteprivilege
464 fields = ('id','created','updated','enacted',)
465
466
467class SingletonmodelSerializer(serializers.HyperlinkedModelSerializer):
468 id = serializers.Field()
469
470 class Meta:
471 model = singletonmodel
472 fields = ()
473
474
475class PlanetstackSerializer(serializers.HyperlinkedModelSerializer):
476 id = serializers.Field()
477
478 class Meta:
479 model = planetstack
480 fields = ('id','created','updated','enacted','description',)
481
482
483class AccountSerializer(serializers.HyperlinkedModelSerializer):
484 id = serializers.Field()
485
486
487 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
488
489
490 class Meta:
491 model = account
492 fields = ('id','created','updated','enacted',)
493
494
495class NetworkparametertypeSerializer(serializers.HyperlinkedModelSerializer):
496 id = serializers.Field()
497
498 class Meta:
499 model = networkparametertype
500 fields = ('id','created','updated','enacted','name','description',)
501
502
503class SitedeploymentsSerializer(serializers.HyperlinkedModelSerializer):
504 id = serializers.Field()
505
506
507 sites = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='site-detail')
508
509
510
511 deployment = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='deployment-detail')
512
513
514 class Meta:
515 model = sitedeployments
516 fields = ('id','created','updated','enacted',)
517
518
519class DeploymentprivilegeSerializer(serializers.HyperlinkedModelSerializer):
520 id = serializers.Field()
521
522
523 user = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='user-detail')
524
525
526
527 deployment = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='deployment-detail')
528
529
530
531 role = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='role-detail')
532
533
534 class Meta:
535 model = deploymentprivilege
536 fields = ('id','created','updated','enacted',)
537
538
539class DeploymentroleSerializer(serializers.HyperlinkedModelSerializer):
540 id = serializers.Field()
541
542 class Meta:
543 model = deploymentrole
544 fields = ('id','created','updated','enacted','role',)
545
546
547class PlcorebaseSerializer(serializers.HyperlinkedModelSerializer):
548 id = serializers.Field()
549
550 class Meta:
551 model = plcorebase
552 fields = ('created','updated','enacted',)
553
554
555class SlicetagSerializer(serializers.HyperlinkedModelSerializer):
556 id = serializers.Field()
557
558
559 slices = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='slice-detail')
560
561
562 class Meta:
563 model = slicetag
564 fields = ('id','created','updated','enacted','name','value',)
565
566
567class NetworktemplateSerializer(serializers.HyperlinkedModelSerializer):
568 id = serializers.Field()
569
570 class Meta:
571 model = networktemplate
572 fields = ('id','created','updated','enacted','name','description','guaranteedBandwidth','visibility','translation','sharedNetworkName','sharedNetworkId',)
573
574
575class RouterSerializer(serializers.HyperlinkedModelSerializer):
576 id = serializers.Field()
577
578 class Meta:
579 model = router
580 fields = ('id','created','updated','enacted','name','owner',)
581
582
583class ServiceresourceSerializer(serializers.HyperlinkedModelSerializer):
584 id = serializers.Field()
585
586 class Meta:
587 model = serviceresource
588 fields = ('id','created','updated','enacted','serviceClass','name','maxUnitsDeployment','maxUnitsNode','maxDuration','bucketInRate','bucketMaxSize','cost','calendarReservable',)
589
590
591serializerLookUp = {
592
593 Serviceattribute: ServiceattributeSerializer,
594
595 Image: ImageSerializer,
596
597 Networkparameter: NetworkparameterSerializer,
598
599 Site: SiteSerializer,
600
601 Slicerole: SliceroleSerializer,
602
603 Tag: TagSerializer,
604
605 Invoice: InvoiceSerializer,
606
607 Sliceprivilege: SliceprivilegeSerializer,
608
609 Planetstackrole: PlanetstackroleSerializer,
610
611 Networksliver: NetworksliverSerializer,
612
613 Project: ProjectSerializer,
614
615 Slice: SliceSerializer,
616
617 Network: NetworkSerializer,
618
619 Service: ServiceSerializer,
620
621 Serviceclass: ServiceclassSerializer,
622
623 Siterole: SiteroleSerializer,
624
625 Charge: ChargeSerializer,
626
627 Role: RoleSerializer,
628
629 Usableobject: UsableobjectSerializer,
630
631 Sliver: SliverSerializer,
632
633 Node: NodeSerializer,
634
635 Reservedresource: ReservedresourceSerializer,
636
637 Payment: PaymentSerializer,
638
639 Networkslice: NetworksliceSerializer,
640
641 Planetstackprivilege: PlanetstackprivilegeSerializer,
642
643 User: UserSerializer,
644
645 Deployment: DeploymentSerializer,
646
647 Reservation: ReservationSerializer,
648
649 Siteprivilege: SiteprivilegeSerializer,
650
651 Singletonmodel: SingletonmodelSerializer,
652
653 Planetstack: PlanetstackSerializer,
654
655 Account: AccountSerializer,
656
657 Networkparametertype: NetworkparametertypeSerializer,
658
659 Sitedeployments: SitedeploymentsSerializer,
660
661 Deploymentprivilege: DeploymentprivilegeSerializer,
662
663 Deploymentrole: DeploymentroleSerializer,
664
665 Plcorebase: PlcorebaseSerializer,
666
667 Slicetag: SlicetagSerializer,
668
669 Networktemplate: NetworktemplateSerializer,
670
671 Router: RouterSerializer,
672
673 Serviceresource: ServiceresourceSerializer,
674
675 None: None,
676 }
677
678# Based on core/views/*.py
679
680
681class ServiceattributeList(generics.ListCreateAPIView):
682 queryset = Serviceattribute.objects.select_related.all()
683 serializer_class = ServiceattributeSerializer
684
685class ServiceattributeDetail(generics.RetrieveUpdateDestroyAPIView):
686 queryset = Serviceattribute.objects.select_related.all()
687 serializer_class = ServiceattributeSerializer
688
689
690
691class ImageList(generics.ListCreateAPIView):
692 queryset = Image.objects.select_related.all()
693 serializer_class = ImageSerializer
694
695class ImageDetail(generics.RetrieveUpdateDestroyAPIView):
696 queryset = Image.objects.select_related.all()
697 serializer_class = ImageSerializer
698
699
700
701class NetworkparameterList(generics.ListCreateAPIView):
702 queryset = Networkparameter.objects.select_related.all()
703 serializer_class = NetworkparameterSerializer
704
705class NetworkparameterDetail(generics.RetrieveUpdateDestroyAPIView):
706 queryset = Networkparameter.objects.select_related.all()
707 serializer_class = NetworkparameterSerializer
708
709
710
711class SiteList(generics.ListCreateAPIView):
712 queryset = Site.objects.select_related.all()
713 serializer_class = SiteSerializer
714
715class SiteDetail(generics.RetrieveUpdateDestroyAPIView):
716 queryset = Site.objects.select_related.all()
717 serializer_class = SiteSerializer
718
719
720
721class SliceroleList(generics.ListCreateAPIView):
722 queryset = Slicerole.objects.select_related.all()
723 serializer_class = SliceroleSerializer
724
725class SliceroleDetail(generics.RetrieveUpdateDestroyAPIView):
726 queryset = Slicerole.objects.select_related.all()
727 serializer_class = SliceroleSerializer
728
729
730
731class TagList(generics.ListCreateAPIView):
732 queryset = Tag.objects.select_related.all()
733 serializer_class = TagSerializer
734
735class TagDetail(generics.RetrieveUpdateDestroyAPIView):
736 queryset = Tag.objects.select_related.all()
737 serializer_class = TagSerializer
738
739
740
741class InvoiceList(generics.ListCreateAPIView):
742 queryset = Invoice.objects.select_related.all()
743 serializer_class = InvoiceSerializer
744
745class InvoiceDetail(generics.RetrieveUpdateDestroyAPIView):
746 queryset = Invoice.objects.select_related.all()
747 serializer_class = InvoiceSerializer
748
749
750
751class SliceprivilegeList(generics.ListCreateAPIView):
752 queryset = Sliceprivilege.objects.select_related.all()
753 serializer_class = SliceprivilegeSerializer
754
755class SliceprivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
756 queryset = Sliceprivilege.objects.select_related.all()
757 serializer_class = SliceprivilegeSerializer
758
759
760
761class PlanetstackroleList(generics.ListCreateAPIView):
762 queryset = Planetstackrole.objects.select_related.all()
763 serializer_class = PlanetstackroleSerializer
764
765class PlanetstackroleDetail(generics.RetrieveUpdateDestroyAPIView):
766 queryset = Planetstackrole.objects.select_related.all()
767 serializer_class = PlanetstackroleSerializer
768
769
770
771class NetworksliverList(generics.ListCreateAPIView):
772 queryset = Networksliver.objects.select_related.all()
773 serializer_class = NetworksliverSerializer
774
775class NetworksliverDetail(generics.RetrieveUpdateDestroyAPIView):
776 queryset = Networksliver.objects.select_related.all()
777 serializer_class = NetworksliverSerializer
778
779
780
781class ProjectList(generics.ListCreateAPIView):
782 queryset = Project.objects.select_related.all()
783 serializer_class = ProjectSerializer
784
785class ProjectDetail(generics.RetrieveUpdateDestroyAPIView):
786 queryset = Project.objects.select_related.all()
787 serializer_class = ProjectSerializer
788
789
790
791class SliceList(generics.ListCreateAPIView):
792 queryset = Slice.objects.select_related.all()
793 serializer_class = SliceSerializer
794
795class SliceDetail(generics.RetrieveUpdateDestroyAPIView):
796 queryset = Slice.objects.select_related.all()
797 serializer_class = SliceSerializer
798
799
800
801class NetworkList(generics.ListCreateAPIView):
802 queryset = Network.objects.select_related.all()
803 serializer_class = NetworkSerializer
804
805class NetworkDetail(generics.RetrieveUpdateDestroyAPIView):
806 queryset = Network.objects.select_related.all()
807 serializer_class = NetworkSerializer
808
809
810
811class ServiceList(generics.ListCreateAPIView):
812 queryset = Service.objects.select_related.all()
813 serializer_class = ServiceSerializer
814
815class ServiceDetail(generics.RetrieveUpdateDestroyAPIView):
816 queryset = Service.objects.select_related.all()
817 serializer_class = ServiceSerializer
818
819
820
821class ServiceclassList(generics.ListCreateAPIView):
822 queryset = Serviceclass.objects.select_related.all()
823 serializer_class = ServiceclassSerializer
824
825class ServiceclassDetail(generics.RetrieveUpdateDestroyAPIView):
826 queryset = Serviceclass.objects.select_related.all()
827 serializer_class = ServiceclassSerializer
828
829
830
831class SiteroleList(generics.ListCreateAPIView):
832 queryset = Siterole.objects.select_related.all()
833 serializer_class = SiteroleSerializer
834
835class SiteroleDetail(generics.RetrieveUpdateDestroyAPIView):
836 queryset = Siterole.objects.select_related.all()
837 serializer_class = SiteroleSerializer
838
839
840
841class ChargeList(generics.ListCreateAPIView):
842 queryset = Charge.objects.select_related.all()
843 serializer_class = ChargeSerializer
844
845class ChargeDetail(generics.RetrieveUpdateDestroyAPIView):
846 queryset = Charge.objects.select_related.all()
847 serializer_class = ChargeSerializer
848
849
850
851class RoleList(generics.ListCreateAPIView):
852 queryset = Role.objects.select_related.all()
853 serializer_class = RoleSerializer
854
855class RoleDetail(generics.RetrieveUpdateDestroyAPIView):
856 queryset = Role.objects.select_related.all()
857 serializer_class = RoleSerializer
858
859
860
861class UsableobjectList(generics.ListCreateAPIView):
862 queryset = Usableobject.objects.select_related.all()
863 serializer_class = UsableobjectSerializer
864
865class UsableobjectDetail(generics.RetrieveUpdateDestroyAPIView):
866 queryset = Usableobject.objects.select_related.all()
867 serializer_class = UsableobjectSerializer
868
869
870
871class SliverList(generics.ListCreateAPIView):
872 queryset = Sliver.objects.select_related.all()
873 serializer_class = SliverSerializer
874
875class SliverDetail(generics.RetrieveUpdateDestroyAPIView):
876 queryset = Sliver.objects.select_related.all()
877 serializer_class = SliverSerializer
878
879
880
881class NodeList(generics.ListCreateAPIView):
882 queryset = Node.objects.select_related.all()
883 serializer_class = NodeSerializer
884
885class NodeDetail(generics.RetrieveUpdateDestroyAPIView):
886 queryset = Node.objects.select_related.all()
887 serializer_class = NodeSerializer
888
889
890
891class ReservedresourceList(generics.ListCreateAPIView):
892 queryset = Reservedresource.objects.select_related.all()
893 serializer_class = ReservedresourceSerializer
894
895class ReservedresourceDetail(generics.RetrieveUpdateDestroyAPIView):
896 queryset = Reservedresource.objects.select_related.all()
897 serializer_class = ReservedresourceSerializer
898
899
900
901class PaymentList(generics.ListCreateAPIView):
902 queryset = Payment.objects.select_related.all()
903 serializer_class = PaymentSerializer
904
905class PaymentDetail(generics.RetrieveUpdateDestroyAPIView):
906 queryset = Payment.objects.select_related.all()
907 serializer_class = PaymentSerializer
908
909
910
911class NetworksliceList(generics.ListCreateAPIView):
912 queryset = Networkslice.objects.select_related.all()
913 serializer_class = NetworksliceSerializer
914
915class NetworksliceDetail(generics.RetrieveUpdateDestroyAPIView):
916 queryset = Networkslice.objects.select_related.all()
917 serializer_class = NetworksliceSerializer
918
919
920
921class PlanetstackprivilegeList(generics.ListCreateAPIView):
922 queryset = Planetstackprivilege.objects.select_related.all()
923 serializer_class = PlanetstackprivilegeSerializer
924
925class PlanetstackprivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
926 queryset = Planetstackprivilege.objects.select_related.all()
927 serializer_class = PlanetstackprivilegeSerializer
928
929
930
931class UserList(generics.ListCreateAPIView):
932 queryset = User.objects.select_related.all()
933 serializer_class = UserSerializer
934
935class UserDetail(generics.RetrieveUpdateDestroyAPIView):
936 queryset = User.objects.select_related.all()
937 serializer_class = UserSerializer
938
939
940
941class DeploymentList(generics.ListCreateAPIView):
942 queryset = Deployment.objects.select_related.all()
943 serializer_class = DeploymentSerializer
944
945class DeploymentDetail(generics.RetrieveUpdateDestroyAPIView):
946 queryset = Deployment.objects.select_related.all()
947 serializer_class = DeploymentSerializer
948
949
950
951class ReservationList(generics.ListCreateAPIView):
952 queryset = Reservation.objects.select_related.all()
953 serializer_class = ReservationSerializer
954
955class ReservationDetail(generics.RetrieveUpdateDestroyAPIView):
956 queryset = Reservation.objects.select_related.all()
957 serializer_class = ReservationSerializer
958
959
960
961class SiteprivilegeList(generics.ListCreateAPIView):
962 queryset = Siteprivilege.objects.select_related.all()
963 serializer_class = SiteprivilegeSerializer
964
965class SiteprivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
966 queryset = Siteprivilege.objects.select_related.all()
967 serializer_class = SiteprivilegeSerializer
968
969
970
971class SingletonmodelList(generics.ListCreateAPIView):
972 queryset = Singletonmodel.objects.select_related.all()
973 serializer_class = SingletonmodelSerializer
974
975class SingletonmodelDetail(generics.RetrieveUpdateDestroyAPIView):
976 queryset = Singletonmodel.objects.select_related.all()
977 serializer_class = SingletonmodelSerializer
978
979
980
981class PlanetstackList(generics.ListCreateAPIView):
982 queryset = Planetstack.objects.select_related.all()
983 serializer_class = PlanetstackSerializer
984
985class PlanetstackDetail(generics.RetrieveUpdateDestroyAPIView):
986 queryset = Planetstack.objects.select_related.all()
987 serializer_class = PlanetstackSerializer
988
989
990
991class AccountList(generics.ListCreateAPIView):
992 queryset = Account.objects.select_related.all()
993 serializer_class = AccountSerializer
994
995class AccountDetail(generics.RetrieveUpdateDestroyAPIView):
996 queryset = Account.objects.select_related.all()
997 serializer_class = AccountSerializer
998
999
1000
1001class NetworkparametertypeList(generics.ListCreateAPIView):
1002 queryset = Networkparametertype.objects.select_related.all()
1003 serializer_class = NetworkparametertypeSerializer
1004
1005class NetworkparametertypeDetail(generics.RetrieveUpdateDestroyAPIView):
1006 queryset = Networkparametertype.objects.select_related.all()
1007 serializer_class = NetworkparametertypeSerializer
1008
1009
1010
1011class SitedeploymentsList(generics.ListCreateAPIView):
1012 queryset = Sitedeployments.objects.select_related.all()
1013 serializer_class = SitedeploymentsSerializer
1014
1015class SitedeploymentsDetail(generics.RetrieveUpdateDestroyAPIView):
1016 queryset = Sitedeployments.objects.select_related.all()
1017 serializer_class = SitedeploymentsSerializer
1018
1019
1020
1021class DeploymentprivilegeList(generics.ListCreateAPIView):
1022 queryset = Deploymentprivilege.objects.select_related.all()
1023 serializer_class = DeploymentprivilegeSerializer
1024
1025class DeploymentprivilegeDetail(generics.RetrieveUpdateDestroyAPIView):
1026 queryset = Deploymentprivilege.objects.select_related.all()
1027 serializer_class = DeploymentprivilegeSerializer
1028
1029
1030
1031class DeploymentroleList(generics.ListCreateAPIView):
1032 queryset = Deploymentrole.objects.select_related.all()
1033 serializer_class = DeploymentroleSerializer
1034
1035class DeploymentroleDetail(generics.RetrieveUpdateDestroyAPIView):
1036 queryset = Deploymentrole.objects.select_related.all()
1037 serializer_class = DeploymentroleSerializer
1038
1039
1040
1041class PlcorebaseList(generics.ListCreateAPIView):
1042 queryset = Plcorebase.objects.select_related.all()
1043 serializer_class = PlcorebaseSerializer
1044
1045class PlcorebaseDetail(generics.RetrieveUpdateDestroyAPIView):
1046 queryset = Plcorebase.objects.select_related.all()
1047 serializer_class = PlcorebaseSerializer
1048
1049
1050
1051class SlicetagList(generics.ListCreateAPIView):
1052 queryset = Slicetag.objects.select_related.all()
1053 serializer_class = SlicetagSerializer
1054
1055class SlicetagDetail(generics.RetrieveUpdateDestroyAPIView):
1056 queryset = Slicetag.objects.select_related.all()
1057 serializer_class = SlicetagSerializer
1058
1059
1060
1061class NetworktemplateList(generics.ListCreateAPIView):
1062 queryset = Networktemplate.objects.select_related.all()
1063 serializer_class = NetworktemplateSerializer
1064
1065class NetworktemplateDetail(generics.RetrieveUpdateDestroyAPIView):
1066 queryset = Networktemplate.objects.select_related.all()
1067 serializer_class = NetworktemplateSerializer
1068
1069
1070
1071class RouterList(generics.ListCreateAPIView):
1072 queryset = Router.objects.select_related.all()
1073 serializer_class = RouterSerializer
1074
1075class RouterDetail(generics.RetrieveUpdateDestroyAPIView):
1076 queryset = Router.objects.select_related.all()
1077 serializer_class = RouterSerializer
1078
1079
1080
1081class ServiceresourceList(generics.ListCreateAPIView):
1082 queryset = Serviceresource.objects.select_related.all()
1083 serializer_class = ServiceresourceSerializer
1084
1085class ServiceresourceDetail(generics.RetrieveUpdateDestroyAPIView):
1086 queryset = Serviceresource.objects.select_related.all()
1087 serializer_class = ServiceresourceSerializer
1088
1089
1090