X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/53893eb6396db5d48c105d09128baff79db4c9cc..19e535d1d17e94e001d47f718c0304386b6309c8:/ServiceReference.py diff --git a/ServiceReference.py b/ServiceReference.py index 25181863..787c5c4a 100644 --- a/ServiceReference.py +++ b/ServiceReference.py @@ -5,19 +5,30 @@ import NavigationInstance class ServiceReference(eServiceReference): def __init__(self, ref): - if isinstance(ref, str): - ref = eServiceReference(ref) - self.ref = ref + if not isinstance(ref, eServiceReference): + self.ref = eServiceReference(ref or "") + else: + self.ref = ref + self.serviceHandler = eServiceCenter.getInstance() - def getStaticServiceInformation(self): - return NavigationInstance.instance.ServiceHandler.info(self.ref) - def __str__(self): return self.ref.toString() def getServiceName(self): - info = self.getStaticServiceInformation() - if info is None: - return None - - return info.getName(self.ref) + info = self.info() + return info and info.getName(self.ref) or "" + + def play(self): + return self.serviceHandler.info(self.ref) + + def record(self): + return self.serviceHandler.record(self.ref) + + def list(self): + return self.serviceHandler.list(self.ref) + + def info(self): + return self.serviceHandler.info(self.ref) + + def offlineOperations(self): + return self.serviceHandler.offlineOperations(self.ref)