diff options
Diffstat (limited to 'src/api/serializers.py')
-rw-r--r-- | src/api/serializers.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/api/serializers.py b/src/api/serializers.py new file mode 100644 index 0000000..237ca02 --- /dev/null +++ b/src/api/serializers.py @@ -0,0 +1,39 @@ +############################################################################## +# Copyright (c) 2016 Max Breitenfeldt and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + + +from rest_framework import serializers + +from booking.models import Booking +from dashboard.models import Server, Resource, ResourceStatus + +class BookingSerializer(serializers.ModelSerializer): + installer_name = serializers.CharField(source='installer.name') + scenario_name = serializers.CharField(source='scenario.name') + + class Meta: + model = Booking + fields = ('id', 'resource_id', 'start', 'end', 'installer_name', 'scenario_name', 'purpose') + + +class ServerSerializer(serializers.ModelSerializer): + class Meta: + model = Server + fields = ('id', 'resource_id', 'name', 'model', 'cpu', 'ram', 'storage') + + +class ResourceSerializer(serializers.ModelSerializer): + class Meta: + model = Resource + fields = ('id', 'name', 'description', 'url', 'server_set') + +class ResourceStatusSerializer(serializers.ModelSerializer): + class Meta: + model = ResourceStatus + fields = ('id', 'resource', 'timestamp','type', 'title', 'content') |