some cleanup and (temp) fixes
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Mon, 15 Apr 2024 20:46:58 +0000 (22:46 +0200)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Mon, 15 Apr 2024 20:46:58 +0000 (22:46 +0200)
music_assistant/common/models/media_items.py
music_assistant/server/controllers/music.py

index 67de3bfe65b94d13e9d365086dec0c575dde65b6..3ebffe88c789387d601a92cdf84b0c005650df12 100644 (file)
@@ -147,6 +147,14 @@ class MediaItemImage(DataClassDictMixin):
         """Check equality of two items."""
         return self.__hash__() == other.__hash__()
 
+    def __post_init__(self):
+        """Call after init."""
+        # migrate from url provider --> builtin
+        # TODO: remove this after 2.0 is launched
+        if self.provider == "url":
+            self.provider = "builtin"
+            self.remotely_accessible = True
+
 
 @dataclass(frozen=True, kw_only=True)
 class MediaItemChapter(DataClassDictMixin):
index 42360f2315a55b74e5f5689f005fe92bd447adc4..2d699d9280523f0eb6436c46994ce8576962d332 100644 (file)
@@ -349,13 +349,17 @@ class MusicController(CoreController):
         return result
 
     @api_command("music/item_by_uri")
-    async def get_item_by_uri(self, uri: str) -> MediaItemType:
+    async def get_item_by_uri(
+        self, uri: str, lazy: bool = True, add_to_library: bool = False
+    ) -> MediaItemType:
         """Fetch MediaItem by uri."""
         media_type, provider_instance_id_or_domain, item_id = await parse_uri(uri)
         return await self.get_item(
             media_type=media_type,
             item_id=item_id,
             provider_instance_id_or_domain=provider_instance_id_or_domain,
+            lazy=lazy,
+            add_to_library=add_to_library,
         )
 
     @api_command("music/item")