diff options
author | Eddy Pedroni <epedroni@pm.me> | 2025-02-22 10:44:50 +0100 |
---|---|---|
committer | Eddy Pedroni <epedroni@pm.me> | 2025-02-22 10:44:50 +0100 |
commit | 336ee67aa4b6c467d3d936124db16ce7dcd5a3b3 (patch) | |
tree | a12ba3843e3263904c5c94a7d8d369589e1594af /solo-tool-project/src/solo_tool/session_manager.py | |
parent | c990b0231c425743622368399aaf3b3b7231c481 (diff) |
Simplify session management
Diffstat (limited to 'solo-tool-project/src/solo_tool/session_manager.py')
-rw-r--r-- | solo-tool-project/src/solo_tool/session_manager.py | 67 |
1 files changed, 28 insertions, 39 deletions
diff --git a/solo-tool-project/src/solo_tool/session_manager.py b/solo-tool-project/src/solo_tool/session_manager.py index 718e864..0896b22 100644 --- a/solo-tool-project/src/solo_tool/session_manager.py +++ b/solo-tool-project/src/solo_tool/session_manager.py @@ -1,41 +1,30 @@ import json -class SessionManager: - def __init__(self, playlist, abController): - self._playlist = playlist - self._abController = abController - - def addSong(self, path): - self._playlist.addSong(path) - - def storeLimits(self, aLimit, bLimit): - self._abController.storeLimits(aLimit, bLimit) - - def loadSession(self, file): - jsonStr = file.read() - session = json.loads(jsonStr) - - self._playlist.clear() - self._abController.clear() - - for entry in session: - songPath = entry["path"] - abLimits = entry["ab_limits"] - self._playlist.addSong(songPath) - - if abLimits is not None: - for l in abLimits: - self._abController.storeLimits(l[0], l[1], songPath) - - def saveSession(self, file): - songs = self._playlist.getSongs() - session = list() - - for s in songs: - entry = { - "path": s, - "ab_limits" : self._abController.getStoredLimits(s) - } - session.append(entry) - - file.write(json.dumps(session)) +def loadSession(file, playlist, abController): + jsonStr = file.read() + session = json.loads(jsonStr) + + playlist.clear() + abController.clear() + + for entry in session: + songPath = entry["path"] + abLimits = entry["ab_limits"] + playlist.addSong(songPath) + + if abLimits is not None: + for l in abLimits: + abController.storeLimits(l[0], l[1], songPath) + +def saveSession(file, playlist, abController): + songs = playlist.getSongs() + session = list() + + for s in songs: + entry = { + "path": s, + "ab_limits" : abController.getStoredLimits(s) + } + session.append(entry) + + file.write(json.dumps(session)) |