create aircox_streamer as separate application
This commit is contained in:
40
aircox_streamer/serializers.py
Normal file
40
aircox_streamer/serializers.py
Normal file
@ -0,0 +1,40 @@
|
||||
from rest_framework import serializers
|
||||
|
||||
|
||||
__all__ = ['RequestSerializer', 'StreamerSerializer', 'SourceSerializer',
|
||||
'PlaylistSerializer', 'QueueSourceSerializer']
|
||||
# TODO: use models' serializers
|
||||
|
||||
|
||||
class BaseMetadataSerializer(serializers.Serializer):
|
||||
rid = serializers.IntegerField()
|
||||
air_time = serializers.DateTimeField()
|
||||
uri = serializers.CharField()
|
||||
|
||||
|
||||
class RequestSerializer(serializers.Serializer):
|
||||
title = serializers.CharField()
|
||||
artist = serializers.CharField()
|
||||
|
||||
|
||||
class StreamerSerializer(serializers.Serializer):
|
||||
station = serializers.CharField(source='station.title')
|
||||
|
||||
|
||||
class SourceSerializer(BaseMetadataSerializer):
|
||||
id = serializers.CharField()
|
||||
uri = serializers.CharField()
|
||||
rid = serializers.IntegerField()
|
||||
air_time = serializers.DateTimeField()
|
||||
status = serializers.CharField()
|
||||
|
||||
|
||||
class PlaylistSerializer(SourceSerializer):
|
||||
program = serializers.CharField(source='program.title')
|
||||
playlist = serializers.ListField(child=serializers.CharField())
|
||||
|
||||
|
||||
class QueueSourceSerializer(SourceSerializer):
|
||||
queue = serializers.ListField(child=RequestSerializer())
|
||||
|
||||
|
Reference in New Issue
Block a user