Beispiel #1
0
    def __parse_disciplines_from_file(self):
        if Repository.FILE_TXT in self.path_disciplines:
            file_disciplines = open(self.path_disciplines, "r")
            lines = file_disciplines.readlines()
            for line in lines:
                if len(line) < 3:
                    continue
                data = line.strip().split(';')
                self.data.append(Discipline(int(data[0]), data[1]))
            file_disciplines.close()
            return

        if Repository.FILE_PICKLE in self.path_disciplines:
            file_disciplines = open(self.path_disciplines, "rb")
            self.data = pickle.load(file_disciplines)
            file_disciplines.close()
            return
Beispiel #2
0
    def preload_list(self):
        """
        Adds to the repository a list of predefined values that are randomised

        Input: -
        Output: -
        """
        randomiser = Randomiser()
        data_to_add = Group()

        for i in range(10):
            random_name = randomiser.get_random_first_name() + " " + randomiser.get_random_last_name()

            data_to_add.students.append(Student(i, random_name))
            data_to_add.disciplines.append(Discipline(i, randomiser.get_random_discipline_name()))
        
        for i in range(10):
            data_to_add.grades.append(Grade(
                randomiser.get_random(data_to_add.disciplines),
                randomiser.get_random(data_to_add.students),
                randomiser.get_random_grade()
            ))
        if self.services.students.store_type == Repository.STORE_MEMORY:
            self.services.add_all(data_to_add)
Beispiel #3
0
 def add_discipline(self, did, name, track=True):
     discipline = Discipline(did, name)
     self.disciplines.add(discipline)
     if track:
         self.tracker.add_action(ActionTracker.ADD, discipline,
                                 ActionTracker.DISCIPLINE)