Reorder & categorize MediaElement attributes

master
Felix Stupp 2 years ago
parent 9ea4a728d6
commit e53ffccef3
Signed by: zocker
GPG Key ID: 93E1BD26F6B02FB7

@ -540,6 +540,8 @@ class MediaCollectionLink(db.Entity):
class MediaElement(db.Entity, UriHolder, Tagable): class MediaElement(db.Entity, UriHolder, Tagable):
### columns
id: int = orm.PrimaryKey( id: int = orm.PrimaryKey(
int, int,
auto=True, auto=True,
@ -607,6 +609,25 @@ class MediaElement(db.Entity, UriHolder, Tagable):
reverse="blocked_by", reverse="blocked_by",
) )
### for UriHolder
@property
def _primary_uri(self) -> str:
return self.uri
def _set_primary_uri(self, uri: str) -> None:
self.uri = uri
@property
def _get_uri_set(self) -> Set[str]:
return {m.uri for m in self.uris}
def _set_uri_set(self, uri_set: Set[str]) -> None:
self.uris = set()
self.add_uris(uri_set)
### for Tagable
@property @property
def orm_assigned_tags(self) -> Query[Tag]: def orm_assigned_tags(self) -> Query[Tag]:
return self.tag_list return self.tag_list
@ -618,6 +639,8 @@ class MediaElement(db.Entity, UriHolder, Tagable):
tag for link in self.collection_links for tag in link.collection.direct_tags tag for link in self.collection_links for tag in link.collection.direct_tags
] ]
### properties
@property @property
def was_extracted(self) -> bool: def was_extracted(self) -> bool:
return self.last_updated is not None return self.last_updated is not None
@ -707,24 +730,11 @@ class MediaElement(db.Entity, UriHolder, Tagable):
link for link in self.collection_links if link.collection.watch_in_order link for link in self.collection_links if link.collection.watch_in_order
) )
### for UriHolder
@property
def _primary_uri(self) -> str:
return self.uri
def _set_primary_uri(self, uri: str) -> None:
self.uri = uri
@property @property
def _get_uri_set(self) -> Set[str]: def info_link(self) -> str:
return {m.uri for m in self.uris} return f"/media/{self.id}"
def _set_uri_set(self, uri_set: Set[str]) -> None:
self.uris = set()
self.add_uris(uri_set)
### own methods ### methods
def merge_to(self, other: MediaElement) -> None: def merge_to(self, other: MediaElement) -> None:
if self.watched: if self.watched:
@ -762,10 +772,6 @@ class MediaElement(db.Entity, UriHolder, Tagable):
def before_update(self) -> None: def before_update(self) -> None:
self.add_single_uri(self.uri) self.add_single_uri(self.uri)
@property
def info_link(self) -> str:
return f"/media/{self.id}"
class MediaThumbnail(db.Entity): class MediaThumbnail(db.Entity):

Loading…
Cancel
Save