Commit 701cc7b8 authored by Devaev Maxim's avatar Devaev Maxim

Using closed variables instead private in classes, fixed small bugs in logger

parent 865e80a6
...@@ -93,14 +93,14 @@ class Cpu(service.FunctionObject) : ...@@ -93,14 +93,14 @@ class Cpu(service.FunctionObject) :
def __init__(self, cpu_name, object_path, service_object = None) : def __init__(self, cpu_name, object_path, service_object = None) :
service.FunctionObject.__init__(self, object_path, service_object) service.FunctionObject.__init__(self, object_path, service_object)
self._cpu_name = cpu_name self.__cpu_name = cpu_name
##### #####
self._previous_used = -1 self.__previous_used = -1
self._previous_full = -1 self.__previous_full = -1
self._cpuinfo_cache_dict = {} self.__cpuinfo_cache_dict = {}
##### #####
...@@ -145,13 +145,13 @@ class Cpu(service.FunctionObject) : ...@@ -145,13 +145,13 @@ class Cpu(service.FunctionObject) :
used = cpu + system + nice used = cpu + system + nice
full = cpu + nice + system + idle full = cpu + nice + system + idle
if self._previous_full == -1 : if self.__previous_full == -1 :
load_percent = 0 load_percent = 0
else : else :
load_percent = (100 * (used - self._previous_used)) / (full - self._previous_full) load_percent = (100 * (used - self.__previous_used)) / (full - self.__previous_full)
self._previous_used = used self.__previous_used = used
self._previous_full = full self.__previous_full = full
return load_percent return load_percent
return -1 return -1
...@@ -160,13 +160,13 @@ class Cpu(service.FunctionObject) : ...@@ -160,13 +160,13 @@ class Cpu(service.FunctionObject) :
### Private ### ### Private ###
def cpuName(self) : def cpuName(self) :
return self._cpu_name return self.__cpu_name
### ###
def cpuinfoSection(self, section_name, use_cache_flag = False) : def cpuinfoSection(self, section_name, use_cache_flag = False) :
if self._cpuinfo_cache_dict.has_key(section_name) and use_cache_flag : if self.__cpuinfo_cache_dict.has_key(section_name) and use_cache_flag :
return self._cpuinfo_cache_dict[section_name] return self.__cpuinfo_cache_dict[section_name]
cpu_id = self.cpuName().split("cpu")[1] cpu_id = self.cpuName().split("cpu")[1]
...@@ -191,7 +191,7 @@ class Cpu(service.FunctionObject) : ...@@ -191,7 +191,7 @@ class Cpu(service.FunctionObject) :
if name == "processor" and value != cpu_id : if name == "processor" and value != cpu_id :
break break
elif name == section_name : elif name == section_name :
self._cpuinfo_cache_dict[name] = value self.__cpuinfo_cache_dict[name] = value
return value return value
return "" return ""
......
...@@ -33,7 +33,7 @@ class SystemService(service.FunctionObject) : ...@@ -33,7 +33,7 @@ class SystemService(service.FunctionObject) :
def __init__(self, system_service_name, object_path, service_object = None) : def __init__(self, system_service_name, object_path, service_object = None) :
service.FunctionObject.__init__(self, object_path, service_object) service.FunctionObject.__init__(self, object_path, service_object)
self._system_service_name = system_service_name self.__system_service_name = system_service_name
### DBus methods ### ### DBus methods ###
...@@ -93,7 +93,7 @@ class SystemService(service.FunctionObject) : ...@@ -93,7 +93,7 @@ class SystemService(service.FunctionObject) :
### Private ### ### Private ###
def systemServiceName(self) : def systemServiceName(self) :
return self._system_service_name return self.__system_service_name
### ###
......
...@@ -29,7 +29,7 @@ def version() : ...@@ -29,7 +29,7 @@ def version() :
print "%s version %s" % (const.MY_NAME, const.VERSION) print "%s version %s" % (const.MY_NAME, const.VERSION)
##### Main ###### ##### Main #####
if __name__ == "__main__" : if __name__ == "__main__" :
log_level = None log_level = None
use_syslog_flag = None use_syslog_flag = None
...@@ -94,6 +94,5 @@ if __name__ == "__main__" : ...@@ -94,6 +94,5 @@ if __name__ == "__main__" :
##### #####
app = application.Application(log_level, use_syslog_flag, bus_type, daemon_mode_flag) application.Application(log_level, use_syslog_flag, bus_type, daemon_mode_flag).run()
app.run()
...@@ -20,21 +20,21 @@ class Application(object) : ...@@ -20,21 +20,21 @@ class Application(object) :
##### #####
self._log_level = log_level self.__log_level = log_level
self._use_syslog_flag = use_syslog_flag self.__use_syslog_flag = use_syslog_flag
self._bus_type = bus_type self.__bus_type = bus_type
self._daemon_mode_flag = daemon_mode_flag self.__daemon_mode_flag = daemon_mode_flag
##### #####
self._server = server.Server() self.__server = server.Server()
### Public ### ### Public ###
def run(self) : def run(self) :
self.prepare() self.prepare()
if self._daemon_mode_flag : if self.__daemon_mode_flag :
logger.info("Run server in daemon mode") logger.info("Run server in daemon mode")
self.runDaemon() self.runDaemon()
else : else :
...@@ -42,7 +42,7 @@ class Application(object) : ...@@ -42,7 +42,7 @@ class Application(object) :
self.runInteractive() self.runInteractive()
def server(self) : def server(self) :
return self._server return self.__server
### ###
...@@ -50,37 +50,37 @@ class Application(object) : ...@@ -50,37 +50,37 @@ class Application(object) :
if signum != None : if signum != None :
logger.info("Recieved signal %d, closing..." % (signum)) logger.info("Recieved signal %d, closing..." % (signum))
self._server.closeServices() self.__server.closeServices()
self._server.quitLoop() self.__server.quitLoop()
logger.info("Closed") logger.info("Closed")
### Private ### ### Private ###
def prepare(self) : def prepare(self) :
if self._use_syslog_flag == None : if self.__use_syslog_flag == None :
if self._daemon_mode_flag : if self.__daemon_mode_flag :
syslog.openlog(const.MY_NAME, syslog.LOG_PID, syslog.LOG_DAEMON) syslog.openlog(const.MY_NAME, syslog.LOG_PID, syslog.LOG_DAEMON)
config.setValue(config.RUNTIME_SECTION, "use_syslog", True) config.setValue(config.RUNTIME_SECTION, "use_syslog", True)
logger.verbose("Logger used syslog") logger.verbose("Logger used syslog")
else : else :
syslog.openlog(const.MY_NAME, syslog.LOG_PID, ( syslog.LOG_DAEMON if self._daemon_mode_flag else syslog.LOG_USER )) syslog.openlog(const.MY_NAME, syslog.LOG_PID, ( syslog.LOG_DAEMON if self.__daemon_mode_flag else syslog.LOG_USER ))
config.setValue(config.RUNTIME_SECTION, "use_syslog", True) config.setValue(config.RUNTIME_SECTION, "use_syslog", True)
logger.verbose("Logger used syslog") logger.verbose("Logger used syslog")
try : try :
self._server.loadServerConfigs() self.__server.loadServerConfigs()
except : except :
logger.error("Initialization error") logger.error("Initialization error")
logger.attachException() logger.attachException()
raise raise
logger.verbose("Preparing complete") logger.verbose("Preparing complete")
if self._bus_type != None : if self.__bus_type != None :
config.setValue(config.APPLICATION_SECTION, "bus_type", self._bus_type) config.setValue(config.APPLICATION_SECTION, "bus_type", self.__bus_type)
if self._log_level != None : if self.__log_level != None :
config.setValue(config.APPLICATION_SECTION, "log_level", self._log_level) config.setValue(config.APPLICATION_SECTION, "log_level", self.__log_level)
config.setValue(config.RUNTIME_SECTION, "application", self) config.setValue(config.RUNTIME_SECTION, "application", self)
...@@ -88,10 +88,10 @@ class Application(object) : ...@@ -88,10 +88,10 @@ class Application(object) :
def runInteractive(self) : def runInteractive(self) :
try : try :
self._server.loadModules() self.__server.loadModules()
self._server.loadServicesConfigs() self.__server.loadServicesConfigs()
self._server.initBus() self.__server.initBus()
self._server.initServices() self.__server.initServices()
logger.info("Initialized") logger.info("Initialized")
except : except :
logger.error("Initialization error") logger.error("Initialization error")
...@@ -106,7 +106,7 @@ class Application(object) : ...@@ -106,7 +106,7 @@ class Application(object) :
logger.attachException() logger.attachException()
try : try :
self._server.runLoop() self.__server.runLoop()
except (SystemExit, KeyboardInterrupt) : except (SystemExit, KeyboardInterrupt) :
self.quit() self.quit()
except : except :
......
...@@ -49,7 +49,7 @@ class UnknownMessageType(Exception) : ...@@ -49,7 +49,7 @@ class UnknownMessageType(Exception) :
##### Private methods ##### ##### Private methods #####
def log(message_type, message) : def log(message_type, message) :
if not message_type in ALL_MESSAGES_LIST : if not message_type in ALL_MESSAGES_LIST :
raise UnknownMessageType("Message type \"%d\" not in list %s" % (message_type, ALL_MESSAGES_LIST)) raise UnknownMessageType("Message type \"%s\" not in list %s" % (str(message_type), ALL_MESSAGES_LIST))
if message_type[2] <= config.value(config.APPLICATION_SECTION, "log_level") : if message_type[2] <= config.value(config.APPLICATION_SECTION, "log_level") :
if MODULE_CALLER_NAME_TAG in message : if MODULE_CALLER_NAME_TAG in message :
...@@ -85,6 +85,8 @@ def verbose(message) : ...@@ -85,6 +85,8 @@ def verbose(message) :
def debug(message) : def debug(message) :
log(DEBUG_MESSAGE, message) log(DEBUG_MESSAGE, message)
###
def attachException(message_type = ERROR_MESSAGE) : def attachException(message_type = ERROR_MESSAGE) :
for line in traceback.format_exc().splitlines() : for line in traceback.format_exc().splitlines() :
log(message_type, line) log(message_type, line)
......
...@@ -21,20 +21,20 @@ class Server(object) : ...@@ -21,20 +21,20 @@ class Server(object) :
##### #####
self._modules_list = [] self.__modules_list = []
self._services_dict = {} self.__services_dict = {}
self._main_loop = gobject.MainLoop() self.__main_loop = gobject.MainLoop()
### Public ### ### Public ###
def runLoop(self) : def runLoop(self) :
logger.verbose("Running GObject loop...") logger.verbose("Running GObject loop...")
self._main_loop.run() self.__main_loop.run()
def quitLoop(self) : def quitLoop(self) :
self._main_loop.quit() self.__main_loop.quit()
logger.verbose("GObject loop closed") logger.verbose("GObject loop closed")
### ###
...@@ -48,14 +48,14 @@ class Server(object) : ...@@ -48,14 +48,14 @@ class Server(object) :
if item.endswith(".py") and not item.startswith(".") ] : if item.endswith(".py") and not item.startswith(".") ] :
try : try :
self._modules_list.append(__import__(module_name, globals(), locals(), [""])) self.__modules_list.append(__import__(module_name, globals(), locals(), [""]))
except : except :
logger.error("Import error on module \"%s\"" % (module_name)) logger.error("Import error on module \"%s\"" % (module_name))
logger.attachException() logger.attachException()
continue continue
self._services_dict[self._modules_list[-1].Service.serviceName()] = { self.__services_dict[self.__modules_list[-1].Service.serviceName()] = {
"service_class" : self._modules_list[-1].Service, "service_class" : self.__modules_list[-1].Service,
"service" : None "service" : None
} }
...@@ -69,8 +69,8 @@ class Server(object) : ...@@ -69,8 +69,8 @@ class Server(object) :
config.loadConfigs(only_sections_list = (config.APPLICATION_SECTION,)) config.loadConfigs(only_sections_list = (config.APPLICATION_SECTION,))
def loadServicesConfigs(self) : def loadServicesConfigs(self) :
for service_name in self._services_dict.keys() : for service_name in self.__services_dict.keys() :
service_options_list = list(self._services_dict[service_name]["service_class"].options()) service_options_list = list(self.__services_dict[service_name]["service_class"].options())
service_options_list.append((service_name, "enabled", "no", validators.validBool)) service_options_list.append((service_name, "enabled", "no", validators.validBool))
for service_options_list_item in service_options_list : for service_options_list_item in service_options_list :
...@@ -101,24 +101,24 @@ class Server(object) : ...@@ -101,24 +101,24 @@ class Server(object) :
### ###
def initServices(self) : def initServices(self) :
for service_name in self._services_dict.keys() : for service_name in self.__services_dict.keys() :
if config.value(service_name, "enabled") : if config.value(service_name, "enabled") :
try : try :
self._services_dict[service_name]["service"] = self._services_dict[service_name]["service_class"]() self.__services_dict[service_name]["service"] = self.__services_dict[service_name]["service_class"]()
self._services_dict[service_name]["service"].initService() self.__services_dict[service_name]["service"].initService()
except : except :
logger.error("Cannot initialize service \"%s\"" % (service_name)) logger.error("Cannot initialize service \"%s\"" % (service_name))
logger.attachException() logger.attachException()
logger.verbose("Initialized service: %s" % (service_name)) logger.verbose("Initialized service: %s" % (service_name))
def closeServices(self) : def closeServices(self) :
for service_name in self._services_dict.keys() : for service_name in self.__services_dict.keys() :
if self._services_dict[service_name]["service"] != None : if self.__services_dict[service_name]["service"] != None :
try : try :
self._services_dict[service_name]["service"].closeService() self.__services_dict[service_name]["service"].closeService()
del self._services_dict[service_name]["service"] del self.__services_dict[service_name]["service"]
except : except :
logger.error("Cannot close service \"%s\"" % (service_name)) logger.error("Cannot close service \"%s\"" % (service_name))
logger.attachException() logger.attachException()
self._services_dict[service_name]["service"] = None self.__services_dict[service_name]["service"] = None
...@@ -55,12 +55,12 @@ class CustomObject(dbus.service.Object) : ...@@ -55,12 +55,12 @@ class CustomObject(dbus.service.Object) :
def __init__(self, object_path, service_object = None) : def __init__(self, object_path, service_object = None) :
dbus.service.Object.__init__(self, config.value(config.RUNTIME_SECTION, "bus_name"), object_path) dbus.service.Object.__init__(self, config.value(config.RUNTIME_SECTION, "bus_name"), object_path)
self._object_path = object_path self.__object_path = object_path
self._service_object = service_object self.__service_object = service_object
##### #####
self._shared = None self.__shared = None
### Public ### ### Public ###
...@@ -82,21 +82,21 @@ class CustomObject(dbus.service.Object) : ...@@ -82,21 +82,21 @@ class CustomObject(dbus.service.Object) :
return build_path(self.shared()) return build_path(self.shared())
def objectPath(self) : def objectPath(self) :
return self._object_path return self.__object_path
### ###
def setService(self, service_object) : def setService(self, service_object) :
self._service_object = service_object self.__service_object = service_object
def service(self) : def service(self) :
return self._service_object return self.__service_object
def setShared(self, shared) : def setShared(self, shared) :
self._shared = shared self.__shared = shared
def shared(self) : def shared(self) :
return self._shared return self.__shared
### ###
......
...@@ -18,7 +18,7 @@ def tracer(function, statics_list=[0]) : ...@@ -18,7 +18,7 @@ def tracer(function, statics_list=[0]) :
logger.debug("%s%s %s::%s" % ( " "*statics_list[0], logger.debug("%s%s %s::%s" % ( " "*statics_list[0],
str((function.__dict__.has_key("_dbus_is_method") and "Called method") or str((function.__dict__.has_key("_dbus_is_method") and "Called method") or
(function.__dict__.has_key("_dbus_is_signal") and "Emited signal")), (function.__dict__.has_key("_dbus_is_signal") and "Emited signal")),
self._object_path, dbus_tools.joinMethod(function._dbus_interface, function.__name__) )) self.__object_path, dbus_tools.joinMethod(function._dbus_interface, function.__name__) ))
statics_list[0] += 1 statics_list[0] += 1
try : try :
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment