Exemplo n.º 1
0
    def __deleteRepository(self):
        '''
            удаление хранилища (всех мета файлов и директорий)
        '''
#        print('__deleteRepository')
        try:
            path_deleting_repo = self._path_to_repo
            self.__closeRepository()
            RepoManager.deleteRepository(path_deleting_repo)
#            self._path_to_repo = None
#            self.__disconnectBD()
#            self.label_opening_repo.setText('')
#            self._is_open_repo = False
            self.__settingModel('%')
        except RepoManager.ExceptionRepoIsNull as error:
            #print('не возможно удалить хранилище')
            self.info_window.show()
            self.info_window.setText('''Не возможно удалить хранилище
Нет открытых хранилищ.
            ''')
            
            #self.connect(self.info_window,QtCore.SIGNAL('closed()'))
            print(error)
        except Exception as error:
#            print('удаление хранилища')
#            print('какие то не учтеные траблы в RepoManager')
            self.info_window.show()
            self.info_window.setText('какие-то неучтенные траблы')
            print(error) 
Exemplo n.º 2
0
    def __createRepository(self):
        '''
            создание нового хранилища
        '''

        try:
            path_to_repo = QtGui.QFileDialog.getExistingDirectory(self,'выбирете директорию хранилища', '/')
            if path_to_repo:
                self._path_to_repo = path_to_repo
                self._user_repo.type = SystemInfo.user_type_admin
                self._repo_manager = RepoManager.initRepository(self._path_to_repo)
                self._repo_manager.addUserRepo(self._user_repo)
#                self._repo_manager.fillRepoFiles() # заполнение базы информацией о файлах хранилщиа.
                self._entity_manager = self._repo_manager.getEntityManager()     

                self._is_open_repo = True
                self.label_opening_repo.setText('Текущее хранилище ---')
                self.__connnectBD()
                self.__settingComboBoxUsers()
                self.label_opening_repo.setText(self._path_to_repo)
#               
        except RepoManager.ExceptionRepoIsExist as error:
            self.info_window.show()
            self.info_window.setText('''Не удалось создать хранилщие.
выбранная директория уже является хранилищем''')
            print(error)
        except Exception as error:
            
            self.info_window.setText('''какие то не учтенные траблы
            ''')
            self.info_window.show()
            print(error)
Exemplo n.º 3
0
    def __openingRrepository(self):
        '''
            октрывает хранилище. парметр self._path_to_repo должен указывать на открываемое хранилище.
        '''
        try:
            self._repo_manager = RepoManager.openRepository(self._path_to_repo)
            self._repo_manager.identificationUser(self._user_repo)
            
            self.__settingComboBoxUsers()
            self.label_opening_repo.setText(' Текущее хранилище --- '+self._path_to_repo)
            self._entity_manager = self._repo_manager.getEntityManager() 
            
            self.__connnectBD()
            self._is_open_repo = True
        except RepoManager.ExceptionRepoIsNull as err:
            self.info_window.setText(''' Выбранная директория не является хранилищем.
            ''')
            self._path_to_repo = None
            self.info_window.show()
#            print('невозможно открыть хранилище')
            print(err)
        except RepoManager.ExceptionUserExist as err:
            self.info_window.setText('''Пользователь уже существует в данном хранилище
            ''')
            self.info_window.show()
            print(err)
        except RepoManager.ExceptionUserGuest as err:
            self.info_window.setText('''Новый пользователь ''' + self._user_repo.name + ''' 
будет зарегистрирован в хранилище.''')
            self.info_window.show()
#            print('пользователь гость')
            print(err)
#            print('автоматически регИстрируется в хранилище')
            self._repo_manager.addUserRepo(self._user_repo)
            self.__openingRrepository()
        except Exception as error:
            self.info_window.setText('''
            какие то не учтенные траблы
            ''')
            self.info_window.show()
            print(error)