- Nicht config- Werte nehmen um die letzten Werte zu speichern, sondern einfache integer..
Frage: Es wird also nicht bei jedem Zugriff auf isServicePlayable eine neue Instanz der Klasse ParentalControl erzeugt ?
Hier lohnt es sich den Code genauer zu lesen, aber ich kürze ab: es gibt nur eine Instanz.
- Session- Key: Das hatte ich deshalb gemacht, weil es keinen Hook gibt, um sich an den Standby anzuhängen.. ich müsste also einen Timer laufen lassen, um Standby.inStandby zu überwachen...
Oder aber: Ich müsste die Standby.py patchen.... Deshalb die Idee, einen Session- Key zu generieren... Damit muss ich nichts monitoren sondern kann beim Zugriff (also on demand) prüfen, ob ein Standby dazwischen war...
Und wieder eine Frage die sich mit Lesen des Quelltextes ergeben hätte... aus der mytest:
#demo code for use of standby enter leave callbacks
#def leaveStandby():
# print "!!!!!!!!!!!!!!!!!leave standby"
#def standbyCountChanged(configElement):
# print "!!!!!!!!!!!!!!!!!enter standby num", configElement.value
# from Screens.Standby import inStandby
# inStandby.onClose.append(leaveStandby)
#config.misc.standbyCounter.addNotifier(standbyCountChanged, initial_call = False)
Alles anzeigen
Ich denke die wenigsten interessieren sich dafür, wie oft enigma2 jetzt seit dem letzten Neustart im Standby war, aber das Configelement lässt sich eben auch wunderbar für den Callback nutzen
- Temporäre variablen an Klasseninstanz binden... äh: hier steh ich auf dem Schlauch... Was meinst Du ?
Da habe ich ungenau gelesen, muss ich wohl zugeben. Ich hab nicht gesehen, dass storeServicePin ausserhalb der getConfigValues genutzt wird. Aber wenn du ein Configelement auf Änderungen überwachen willst, nutz doch einfach einen Callback statt bei jedem Funktionsaufruf die Werte zu vergleichen - das spart Nerven und Ressourcen
- Die Speicherung des Wertes: Das habe ich -ohne nachzudenken- übernommen. Aber natürlich hast Du recht: Das direkt so zu speichern, wie ich es später brauche, ist natürlich sinnvoll... da war zu viel Respekt for fremdem Code da... deshalb heisst auch die "restart" - Variante nicht standby... ich wollte nicht einfach die Werte ändern (auch wenn das noch nicht verwendet wurde).
Faustregel: Ist etwas ungenutzt kannst du es recht gefahrlos ändern, ist etwas schlecht gemacht kann man drüber diskutieren, ist etwas gut lass die Finger davon