Use @singleton decorator

This commit is contained in:
Keith Edmunds 2025-03-20 17:44:33 +00:00
parent e40a4ab57a
commit 7361086da5

View File

@ -6,24 +6,17 @@
import vlc # type: ignore
# App imports
from classes import singleton
@singleton
class VLCManager:
"""
Singleton class to ensure we only ever have one vlc Instance
"""
__instance = None
def __init__(self) -> None:
if VLCManager.__instance is None:
self.vlc_instance = vlc.Instance()
VLCManager.__instance = self
else:
raise Exception("Attempted to create a second VLCManager instance")
self.vlc_instance = vlc.Instance()
@staticmethod
def get_instance() -> vlc.Instance:
if VLCManager.__instance is None:
VLCManager()
return VLCManager.__instance
def get_instance(self) -> vlc.Instance:
return self.vlc_instance