Source code for datasources.serializers

from rest_framework import serializers

from . import models


[docs]class LicenceSerializer(serializers.ModelSerializer):
[docs] class Meta: model = models.Licence fields = ['name', 'short_name', 'version', 'url']
[docs]class MetadataFieldSerializer(serializers.ModelSerializer):
[docs] class Meta: model = models.MetadataField fields = ['name', 'short_name']
[docs]class MetadataItemSerializer(serializers.ModelSerializer):
[docs] class Meta: model = models.MetadataItem fields = ['field', 'value']
[docs]class DataSourceSerializer(serializers.ModelSerializer): metadata_items = MetadataItemSerializer(many=True, read_only=True) licence = LicenceSerializer(many=False, read_only=True)
[docs] class Meta: model = models.DataSource fields = [ 'id', 'name', 'description', 'url', 'plugin_name', 'licence', 'is_encrypted', 'encrypted_docs_url', 'metadata_items' ]
[docs]class QualityCriterionSerializer(serializers.ModelSerializer):
[docs] class Meta: model = models.QualityCriterion fields = ['weight', 'metadata_field']
[docs]class QualityLevelSerializer(serializers.ModelSerializer): criteria = QualityCriterionSerializer(many=True, read_only=True)
[docs] class Meta: model = models.QualityLevel fields = ['level', 'threshold', 'criteria']
[docs]class QualityRulesetSerializer(serializers.ModelSerializer): levels = QualityLevelSerializer(many=True, read_only=True)
[docs] class Meta: model = models.QualityRuleset fields = '__all__'