Files
tt/lib/DataStore.py

30 lines
830 B
Python
Raw Normal View History

2024-06-13 10:10:34 +02:00
from pathlib import Path
from .TimeSlot import TimeSlot
import json
class DataStore:
def __init__(self, filename: Path, create=False):
self._filename = filename
if create:
self._time_slots = []
self._write_update()
else:
with open(self._filename, "r") as f:
self._time_slots = list(json.load(f))
def _write_update(self):
with open(self._filename, "w+") as f:
json.dump(self._time_slots, f, default=vars)
def add_time_slot(self, time_slot: TimeSlot):
self._time_slots.append(time_slot)
self._write_update()
def remove_time_slot(self, time_slot: TimeSlot):
self._time_slots.remove(time_slot)
self._write_update()
def get_all_time_slots(self):
return self._time_slots[:]