from django.contrib.auth import get_user_model

from rest_framework import serializers
from .models import VMHost, VMProduct, VMSnapshotProduct

class VMHostSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = VMHost
        fields = '__all__'


class VMProductSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = VMProduct
        fields = ['uuid', 'description', 'order', 'owner', 'status', 'name', \
                'cores', 'ram_in_gb']
        read_only_fields = ['uuid', 'description', 'order', 'owner', 'status']

class VMSnapshotProductSerializer(serializers.ModelSerializer):
    class Meta:
        model = VMSnapshotProduct
        fields = '__all__'


    # verify that vm.owner == user.request
    def validate_vm(self, value):
        print(value)
        return True