33 lines
1.5 KiB
Python
33 lines
1.5 KiB
Python
|
from res_framework import serializers
|
||
|
from .models import VirtualMachine, VirtualMachineTemplate
|
||
|
|
||
|
class VirtualMachineSerializer(serializers.ModelSerializer):
|
||
|
"""Serializer to map the virtual machine instance into JSON format."""
|
||
|
|
||
|
cores = serializers.IntegerField(read_only=True, source='get_cores')
|
||
|
name = serializers.CharField(read_only=True, source='get_name')
|
||
|
disk_size = serializers.IntegerField(read_only=True, source='get_disk_size')
|
||
|
memory = serializers.IntegerField(read_only=True, source='get_memory')
|
||
|
#TODO: See if we can change to IPAddressField
|
||
|
ip = serializers.CharField(read_only=True, source='get_ip')
|
||
|
deploy_id = serializers.IntegerField(read_only=True, source='get_deploy_id')
|
||
|
id = serializers.IntegerField(read_only=True, source='get_id')
|
||
|
state = serializers.CharField(read_only=True, source='get_state')
|
||
|
price = serializers.FloatField(read_only=True, source='get_price')
|
||
|
|
||
|
class Meta:
|
||
|
model = VirtualMachine
|
||
|
|
||
|
|
||
|
class VirtualMachineTemplateSerializer(serializers.ModelSerializer):
|
||
|
"""Serializer to map the virtual machine template instance into JSON format."""
|
||
|
cores = serializers.IntegerField(read_only=True, source='get_cores')
|
||
|
name = serializers.CharField(read_only=True, source='get_name')
|
||
|
disk_size = serializers.IntegerField(read_only=True, source='get_disk_size')
|
||
|
memory = serializers.IntegerField(read_only=True, source='get_memory')
|
||
|
|
||
|
class Meta:
|
||
|
model = VirtualMachineTemplate
|
||
|
fields = ()
|
||
|
|