aboutsummaryrefslogtreecommitdiffstats
path: root/solo-tool-project/src/solo_tool/session_manager.py
blob: a4dabc057ff757d870be8c1ded413b918bd6b9f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import json

def loadSession(file, songList, abController):
    jsonStr = file.read()
    session = json.loads(jsonStr)

    songList.clear()
    abController.clear()

    for entry in session:
        songPath = entry["path"]
        abLimits = entry["ab_limits"]
        songList.append(songPath)

        if abLimits is not None:
            for l in abLimits:
                abController.storeLimits(l[0], l[1], songPath)
        
def saveSession(file, songList, abController):
    session = list()

    for s in songList:
        entry = {
            "path": s,
            "ab_limits" : abController.getStoredLimits(s)
        }
        session.append(entry)

    file.write(json.dumps(session))