def __load_dicts(self): """ DOCUMENT ME! """ # monta o nome da tabela de performances ls_path = os.path.join(self.dct_config["dir.tab"], self.dct_config["tab.prf"]) # carrega a tabela de performance em um dicionário self.__dct_prf = prfdata.CPrfData(self, ls_path) assert self.__dct_prf is not None # monta o nome do arquivo de exercício ls_path = os.path.join(self.dct_config["dir.exe"], self.dct_config["glb.exe"]) # carrega o exercício em um dicionário ldct_exe = exedata.CExeData(self, ls_path + ".exe.xml") assert ldct_exe is not None # obtém o exercício self.__exe = ldct_exe[self.dct_config["glb.exe"]] assert self.__exe # monta o nome do arquivo de tráfegos ls_path = os.path.join(self.dct_config["dir.trf"], self.dct_config["glb.exe"]) # carrega a tabela de tráfegos do exercício self.__dct_trf = trfdata.CTrfData(self, ls_path, self.__exe) assert self.__dct_trf is not None # coloca a tabela de tráfegos no exercício self.__exe.dct_exe_trf = self.__dct_trf
def load_exes(self): """ faz a carga da tabela de exercícios """ # obtém o diretório padrão de exercícios ls_dir = self.dct_config["dir.exe"] # nome do diretório vazio ? if ls_dir is None: # diretório padrão de tabelas ls_dir = self.dct_config["dir.exe"] = "exes" # diretório não existe ? if not os.path.exists(ls_dir): # cria o diretório os.mkdir(ls_dir) # percorre o diretório for ls_file in os.listdir(ls_dir): # monta o path completo do arquivo de exercício ls_path = os.path.join(ls_dir, ls_file) # não é um arquivo ? if not os.path.isfile(ls_path): # passa ao próximo continue # split name and extension _, l_fext = os.path.splitext(ls_file) # não é um arquivo XML ? if ".xml" != l_fext: # passa ao próximo continue # cria um dicionário de exercícios ldct_exe = exedata.CExeData(self, ls_path) if ldct_exe is None: # logger l_log = logging.getLogger("CModelDBEdit::load_exes") l_log.setLevel(logging.WARNING) l_log.warning("<E01: tabela de exercícios:[{}] não existe.".format(ls_path)) # cai fora... return False # salva no dicionário self.__dct_exe.update(ldct_exe) # retorna return True
def __load_tables(self): """ abre/cria as tabelas do sistema @return flag e mensagem """ # monta o nome da tabela de performances ls_path = os.path.join(self.dct_config["dir.tab"], self.dct_config["tab.prf"]) # carrega a tabela de performance em um dicionário self.__dct_prf = prfdata.CPrfData(self, ls_path) assert self.__dct_prf is not None # monta o nome do arquivo de exercício ls_path = os.path.join(self.dct_config["dir.exe"], self.dct_config["glb.exe"]) # carrega o exercício em um dicionário ldct_exe = exedata.CExeData(self, ls_path + ".exe.xml") assert ldct_exe is not None # obtém o exercício self.__exe = ldct_exe[self.dct_config["glb.exe"]] assert self.__exe # monta o nome do arquivo de tráfegos ls_path = os.path.join(self.dct_config["dir.trf"], self.dct_config["glb.exe"]) # carrega a tabela de tráfegos do exercício self.__dct_trf = trfdata.CTrfData(self, ls_path, self.__exe) assert self.__dct_trf is not None # coloca a tabela de tráfegos no exercício self.__exe.dct_exe_trf = self.__dct_trf # retorna return True, None
def __load_exes(self): """ faz a carga da tabela de exercícios """ # obtém o diretório padrão de exercícios ls_dir = self.dct_config["dir.exe"] # nome do diretório vazio ? if ls_dir is None: # diretório padrão de tabelas ls_dir = self.dct_config["dir.exe"] = "exes" # diretório não existe ? if not os.path.exists(ls_dir): # cria o diretório os.mkdir(ls_dir) # percorre o diretório for ls_file in os.listdir(ls_dir): # monta o path completo do arquivo de exercício ls_path = os.path.join(ls_dir, ls_file) # não é um arquivo ? if not os.path.isfile(ls_path): # passa ao próximo continue # split name and extension ls_name, l_fext = os.path.splitext(ls_file) # não é um arquivo XML ? if ".xml" != l_fext: # passa ao próximo continue # split name and extension ls_name, l_fext = os.path.splitext(ls_name) # não é um arquivo de exercício ? if ".exe" != l_fext: # passa ao próximo continue cdbg.M_DBG.debug("filename: {}".format(os.path.join(ls_dir, ls_name))) # cria um dicionário de exercícios ldct_exe = exedata.CExeData(self, os.path.join(ls_dir, ls_name)) if ldct_exe is None: # logger l_log = logging.getLogger("CModelDBEdit::__load_exes") l_log.setLevel(logging.WARNING) l_log.warning("<E01: tabela de exercícios: {} não existe.".format(ls_path)) # cai fora... return False # carrega os tráfegos do exercício ls_exe_key = ldct_exe.keys()[0] # atualiza o exercicio corrente self.__exe = ldct_exe[ls_exe_key] # carrega os tráfegos do exercício ldct_trf = self.__load_trafs(ls_exe_key, ldct_exe) cdbg.M_DBG.debug("dicionario de tráfegos: {}".format(ldct_trf)) if ldct_trf: # obtém o exercício l_exe = ldct_exe[ls_exe_key] # coloca a tabela de tráfegos no exercício l_exe.dct_exe_trf = ldct_trf # coloca o exercício no dicionário ldct_exe[ls_exe_key] = l_exe # salva no dicionário self.__dct_exe.update(ldct_exe) # retorna return True