20 lines
762 B
Python
20 lines
762 B
Python
from copy import deepcopy
|
|
|
|
from lbrynet.schema.proto2 import stream_pb2 as stream_pb
|
|
from lbrynet.schema.legacy_schema_v1.source import Source
|
|
from lbrynet.schema.legacy_schema_v1 import VERSION_MAP
|
|
from lbrynet.schema.legacy_schema_v1.metadata import Metadata
|
|
from lbrynet.schema.baseschema import Schema
|
|
|
|
|
|
class Stream(Schema):
|
|
@classmethod
|
|
def load(cls, message):
|
|
_claim = deepcopy(message)
|
|
source = Source.load(_claim.pop('source'))
|
|
metadata = Metadata.load(_claim.pop('metadata'))
|
|
_message_pb = stream_pb.Stream()
|
|
_message_pb.version = VERSION_MAP[_claim.pop("version")]
|
|
_message_pb.source.CopyFrom(source)
|
|
_message_pb.metadata.CopyFrom(metadata)
|
|
return cls._load(_claim, _message_pb)
|