class SoundRepository: def __init__(self): self.file_manager = FileManager() self.path_builder_init = SoundPathBuilder def add_sound(self, user_name, training_number, sound): path_builder = self.path_builder_init(user_name, training_number) self.file_manager.create_wav(sound, path_builder) def get_sound(self, user_name, training_number): path_builder = self.path_builder_init(user_name, training_number) sound = self.file_manager.get_wav(path_builder) return sound
class TrainingRepository: def __init__(self): self.fileManager = FileManager() def get_trainings_by_user_name(self, user_name): dir_path_builder = TrainingsDirPathBuilder(user_name) training_names = self.fileManager.get_all_names(dir_path_builder) trainings = [] for training_name in training_names: training_path_builder = TrainingFilePathBuilder( user_name, training_name) training_json = self.fileManager.get_content(training_path_builder) json_converter = JsonConverter(Training) training = json_converter.convert_from_json(training_json) trainings.append(training) return trainings def add_training(self, training): dir_path_builder = TrainingsDirPathBuilder(training.user_name) self.fileManager.create_dir(str(training.number), dir_path_builder) info_path_builder = TrainingFilePathBuilder(training.user_name, training.number) json_converter = JsonConverter(Training) json_training = json_converter.convert_to_json(training) self.fileManager.create(json_training, info_path_builder) def add_training_folder(self, user_name): dir_path_builder = UserFilesPathBuilder(user_name) self.fileManager.create_dir(TRAININGS, dir_path_builder)
class UserRepository: def __init__(self): self.file_manager = FileManager() self.path_builder = UsersPathBuilder() def get_users(self): users_names = self.file_manager.get_all_names(self.path_builder) return users_names def add_user(self, user_name): self.file_manager.create_dir(user_name, self.path_builder) def exist(self, user_name): path_to_user_dir = UserFilesPathBuilder(user_name) user_exist = self.file_manager.exist(path_to_user_dir) return user_exist
class TrainingDataRepository: def __init__(self, path_builder_init, data_init): self.file_manager = FileManager() self.path_builder_init = path_builder_init self.data_init = data_init def add_data(self, user_name, training_number, data): path_builder = self.path_builder_init(user_name, training_number) json_converter = JsonConverter(self.data_init) json_data = json_converter.convert_to_json(data) self.file_manager.create(json_data, path_builder) def get_data(self, user_name, training_number): path_builder = self.path_builder_init(user_name, training_number) json_data = self.file_manager.get_content(path_builder) json_converter = JsonConverter(self.data_init) data = json_converter.convert_from_json(json_data) return data
class ReadingRepository: def __init__(self): self.fileManager = FileManager() def get_available_readings(self): path_builder = ReadingsDirPathBuilder() reading_names = self.fileManager.get_all_names(path_builder) readings = [] for reading_name in reading_names: path_builder = ReadingFileInfoPathBuilder(reading_name) text = self.fileManager.get_content(path_builder) reading = Reading(reading_name, text) readings.append(reading) return readings def get_reading(self, reading_title): path_builder = ReadingFileInfoPathBuilder(reading_title) text = self.fileManager.get_content(path_builder) reading = Reading(reading_title, text) return reading
def __init__(self): self.file_manager = FileManager() self.path_builder = UsersPathBuilder()
def __init__(self, path_builder_init, data_init): self.file_manager = FileManager() self.path_builder_init = path_builder_init self.data_init = data_init
def __init__(self): self.fileManager = FileManager()
def __init__(self): self.file_manager = FileManager() self.path_builder_init = SoundPathBuilder