class LoadArgument: __argv = {} __logger_data = None ARGV_LOGIN = "******" ARGV_LOGOUT = "-o" ARGV_PRINT_DATA = "-s" EVENT_SYSTEM_ON = 0xF1 EVENT_SYSTEM_OFF = 0xF2 def __init__(self): self.__init_db__() def __del__(self): self.__logger_data.__del__() # 初始化数据库 def __init_db__(self): self.__logger_data = LoggerData() # 验证参数 def parse_argv(self, arg): if len(arg) <= 1: self.print_info() return arg_result = { self.ARGV_LOGIN: lambda: self.__record_state_login(), self.ARGV_LOGOUT: lambda: self.__record_state_logout(), self.ARGV_PRINT_DATA: lambda: self.print_event_data(), } if arg[1] not in arg_result.iterkeys(): self.print_info() else: return arg_result[arg[1]]() # 开启的时候 def __record_state_login(self): self.__logger_data.add(self.EVENT_SYSTEM_ON) print "record_state_login..." # 关闭的时候 def __record_state_logout(self): self.__logger_data.add(self.EVENT_SYSTEM_OFF) print "record_state_logout..." # 打印数据 def print_event_data(self): events = self.__logger_data.get_today_all_events() print "----Show all the records----" for e in events: print "ID=%d\tState=%s\tTime=%s" % (e[0], self.__get_state(e[1]), e[2]) print "----End----" # 转换状态 def __get_state(self, state): if state == self.EVENT_SYSTEM_ON: return "Login" if state == self.EVENT_SYSTEM_OFF: return "Logout" # 打印提示信息 def print_info(self): print "help:" print "-i : login the system." print "-o : logout the system." print "-s : show all the records."
def __init_db__(self): self.__logger_data = LoggerData()