This commit is contained in:
@ -1,8 +1,10 @@
|
||||
#!/usr/bin/env python3
|
||||
from flask_marshmallow.sqla import auto_field
|
||||
from marshmallow_enum import EnumField
|
||||
|
||||
from models import User, StreamResource
|
||||
from models import VideonUser, StreamResource, StreamResourceTypeEnum, OutputUrls
|
||||
from marshm import ma
|
||||
from db import db
|
||||
from marshmallow import fields
|
||||
|
||||
|
||||
@ -33,13 +35,17 @@ class UserMetadataSchema(ma.SQLAlchemyAutoSchema):
|
||||
Marshmallow schema generated
|
||||
"""
|
||||
class Meta:
|
||||
model = User
|
||||
model = VideonUser
|
||||
exclude = ('timestamp', 'password', 'id',)
|
||||
sqla_session = db.session
|
||||
creation_date = auto_field("timestamp", dump_only=False)
|
||||
streamresources = auto_field
|
||||
|
||||
|
||||
class IngestInputSchema(ma.Schema):
|
||||
outputNeighbours = fields.List(fields.UUID(), required=True)
|
||||
outputNeighbours = fields.List(fields.UUID(), required=False)
|
||||
x = fields.Integer(required=True)
|
||||
y = fields.Integer(required=True)
|
||||
|
||||
|
||||
class EncodeInputSchema(ma.Schema):
|
||||
@ -48,11 +54,35 @@ class EncodeInputSchema(ma.Schema):
|
||||
bitrate = fields.Integer(required=False)
|
||||
width = fields.Integer(required=False)
|
||||
height = fields.Integer(required=False)
|
||||
x = fields.Integer(required=True)
|
||||
y = fields.Integer(required=True)
|
||||
|
||||
|
||||
class RestreamInputSchema(ma.Schema):
|
||||
inputNeighbour = fields.UUID(required=True)
|
||||
inputNeighbour = fields.UUID(required=False)
|
||||
outputURLs = fields.List(fields.String(), required=True)
|
||||
x = fields.Integer(required=True)
|
||||
y = fields.Integer(required=True)
|
||||
|
||||
|
||||
class OutputUrlSchema(ma.SQLAlchemyAutoSchema):
|
||||
"""
|
||||
Marshmallow schema generated
|
||||
"""
|
||||
class Meta:
|
||||
model = OutputUrls
|
||||
fields = ('output_url', )
|
||||
sqla_session = db.session
|
||||
|
||||
|
||||
class StreamResourceIdSchema(ma.SQLAlchemyAutoSchema):
|
||||
"""
|
||||
Marshmallow schema generated
|
||||
"""
|
||||
class Meta:
|
||||
model = StreamResource
|
||||
fields = ('id',)
|
||||
sqla_session = db.session
|
||||
|
||||
|
||||
class StreamResourceSchema(ma.SQLAlchemyAutoSchema):
|
||||
@ -61,7 +91,9 @@ class StreamResourceSchema(ma.SQLAlchemyAutoSchema):
|
||||
"""
|
||||
class Meta:
|
||||
model = StreamResource
|
||||
exclude = ('output_urls', 'parent_id', 'children',)
|
||||
outputURLs = auto_field('output_urls', dump_only=False)
|
||||
inputNeighbour = auto_field('parent_id', dump_only=False)
|
||||
outputNeighbours = auto_field('children', dump_only=False)
|
||||
exclude = ('parent_id',)
|
||||
sqla_session = db.session
|
||||
resource_type = EnumField(StreamResourceTypeEnum, by_value=True, dump_only=True)
|
||||
output_urls = ma.Pluck(OutputUrlSchema, field_name='output_url', many=True, dump_only=True)
|
||||
inputNeighbour = auto_field('parent_id', dump_only=True)
|
||||
children = ma.Pluck(StreamResourceIdSchema, field_name='id', many=True, dump_only=True)
|
||||
|
Reference in New Issue
Block a user