def __loadFromFile(self):
        try:
            f = open(self.__fileName, "r")
            line = f.readline().strip()
            while line != "":
                attrs = line.split(",")
                grade = Grade(int(attrs[0]), int(attrs[1]), int(attrs[2]))

                GradeRepository.add(self, grade)
                line = f.readline().strip()

        except IOError:
            raise FileRepositoryException()
        finally:
            f.close()
 def __storeToFile(self):
     f = open(self.__fileName, "w")
     sts = GradeRepository.getAllGrades(self)
     for st in sts:
         strf = str(stdisciplineID) + "," + str(st.studentID) + "," + str(
             st.gradeValue)
         strf = strf + "\n"
         f.write(strf)
     f.close()
Esempio n. 3
0
while True:
    print("\nChoose what kind of repository you want to use \n")
    print("1 - inmemory repository")
    print("2 - text file repository")
    print("3 - binary file repository")
    print("0 - to exit")
    repository_mode = int(input("\nYour choice for repository is: "))
    if repository_mode == 1:
        studentValidator = StudentValidator()
        disciplineValidator = DisciplineValidator()
        gradeValidator = GradeValidator()

        studentRepo = StudentRepository()
        disciplineRepo = DisciplineRepository()
        gradeRepo = GradeRepository()

        studentController = StudentController(studentRepo)
        disciplineController = DisciplineController(disciplineRepo)
        gradeController = GradeController(gradeRepo, disciplineRepo,
                                          studentRepo)

        ui = ConsoleUI(studentController, disciplineController,
                       gradeController)
        opt = ui.runApp()
        if opt == 0:
            break

    elif repository_mode == 2:
        studentValidator = StudentValidator()
        disciplineValidator = DisciplineValidator()
Esempio n. 4
0
    def __init__(self, fileName):

        GradeRepository.__init__(self)
        self.__fileName = fileName
        self.__loadFromFile()
Esempio n. 5
0
 def update(self, gradeID, newName):
     GradeRepository.update(self, gradeID, newName)
     self.__storeToFile()
Esempio n. 6
0
 def remove(self, gradeID):
     GradeRepository.remove(self, gradeID)
     self.__storeToFile()
Esempio n. 7
0
 def add(self, grade):
     GradeRepository.add(self, grade)
     self.__storeToFile()