diff options
| author | Huang Peng <shawn.p.huang@gmail.com> | 2008-07-15 11:41:01 +0800 |
|---|---|---|
| committer | Huang Peng <shawn.p.huang@gmail.com> | 2008-07-15 11:41:01 +0800 |
| commit | 79ed2426c242a5d1d5d15fde43b5d5ad262db1d6 (patch) | |
| tree | add8e1c7da45debd6768cf75c7a521943a5f00a6 /daemon/register.py | |
| parent | 3f12e83421859aeb408810758d873d8577956b5d (diff) | |
| download | ibus-79ed2426c242a5d1d5d15fde43b5d5ad262db1d6.tar.gz ibus-79ed2426c242a5d1d5d15fde43b5d5ad262db1d6.tar.xz ibus-79ed2426c242a5d1d5d15fde43b5d5ad262db1d6.zip | |
Refine coding style of register.py
Diffstat (limited to 'daemon/register.py')
| -rw-r--r-- | daemon/register.py | 116 |
1 files changed, 58 insertions, 58 deletions
diff --git a/daemon/register.py b/daemon/register.py index 80a34d1..6ad33b4 100644 --- a/daemon/register.py +++ b/daemon/register.py @@ -25,9 +25,9 @@ import signal import glob import ibus -class Engine (ibus.Object): - def __init__ (self, name, lang = "other", icon = "", author = "", credits = "", _exec = "", pid = 0): - ibus.Object.__init__ (self) +class Engine(ibus.Object): + def __init__(self, name, lang = "other", icon = "", author = "", credits = "", _exec = "", pid = 0): + super(Engine, self).__init__() self._name = name self._lang = lang self._icon = icon @@ -36,98 +36,98 @@ class Engine (ibus.Object): self._exec = _exec self._pid = pid - def start (self): + def start(self): if self._pid != 0: return - pid = os.fork () + pid = os.fork() if pid > 0: # parent self._pid = pid elif pid == 0: # child - os.setpgrp () - args = self._exec.split () - os.execv (args[0], args) - sys.exit (1) + os.setpgrp() + args = self._exec.split() + os.execv(args[0], args) + sys.exit(1) - def stop (self, force = False): + def stop(self, force = False): if self._pid == 0: return try: if force: - os.kill (-self._pid, signal.SIGKILL) + os.kill(-self._pid, signal.SIGKILL) else: - os.kill (-self._pid, signal.SIGTERM) + os.kill(-self._pid, signal.SIGTERM) except: pass - def engine_exit (self, pid): + def engine_exit(self, pid): if self._pid == pid: self._pid = 0 return True return False - def __eq__ (self, o): + def __eq__(self, o): # We don't test icon author & credits return self._name == o._name and \ self._lang == o._lang and \ self._exec == o._exec - def __str__ (self): - return "Engine ('%s', '%s', '%s', '%s', '%s', '%s', %d" % (self._name, self._lang, \ + def __str__(self): + return "Engine('%s', '%s', '%s', '%s', '%s', '%s', %d" % (self._name, self._lang, \ self._icon, self._author, \ self._credits, self._exec, \ self._pid) -class Register (ibus.Object): - def __init__ (self): - ibus.Object.__init__ (self) - self._engines = {} - self._load () - signal.signal (signal.SIGCHLD, self._sigchld_cb) +class Register(ibus.Object): + def __init__(self): + super(Register, self).__init__() + self._engines = dict() + self._load() + signal.signal(signal.SIGCHLD, self._sigchld_cb) - def start_engine (self, lang, name): + def start_engine(self, lang, name): key = (lang, name) if key not in self._engines: - raise ibus.IBusException ("Can not find engine (%s, %s)" % (lang, name)) + raise ibus.IBusException("Can not find engine(%s, %s)" % (lang, name)) engine = self._engines[(lang, name)] - engine.start () + engine.start() - def stop_engine (self, lang, name): + def stop_engine(self, lang, name): key = (lang, name) if key not in self._engines: - raise ibus.IBusException ("Can not find engine (%s, %s)" % (lang, name)) + raise ibus.IBusException("Can not find engine(%s, %s)" % (lang, name)) engine = self._engines[(lang, name)] - engine.stop () + engine.stop() - def restart_engine (self, lang, name): + def restart_engine(self, lang, name): key = (lang, name) if key not in self._engines: - raise ibus.IBusException ("Can not find engine (%s, %s)" % (lang, name)) + raise ibus.IBusException("Can not find engine (%s, %s)" % (lang, name)) engine = self._engines[(lang, name)] - engine.stop () - engine.start () + engine.stop() + engine.start() - def list_engines (self): + def list_engines(self): engines = [] - for key, e in self._engines.items (): - engines.append ((e._name, e._lang, e._icon, e._author, e._credits, e._exec, e._pid != 0)) + for key, e in self._engines.items(): + engines.append((e._name, e._lang, e._icon, e._author, e._credits, e._exec, e._pid != 0)) return engines - def _sigchld_cb (self, sig, f): - pid, state = os.wait () - for key, engine in self._engines.items (): - if engine.engine_exit (pid): + def _sigchld_cb(self, sig, f): + pid, state = os.wait() + for key, engine in self._engines.items(): + if engine.engine_exit(pid): break - def _load (self): - _file = path.abspath (__file__) - _dir = path.dirname (_file) + "./../engine" - _dir = path.abspath (_dir) + def _load(self): + _file = path.abspath(__file__) + _dir = path.dirname(_file) + "./../engine" + _dir = path.abspath(_dir) _dir = "/usr/share/ibus/engine" - for _file in glob.glob (_dir + "/*.engine"): - engine = self._load_engine (_file) + for _file in glob.glob(_dir + "/*.engine"): + engine = self._load_engine(_file) if (engine._lang, engine._name) in self._engines: old_engine = self._engines[(engine._lang, engine._name)] if old_engine == engine: @@ -141,8 +141,8 @@ class Register (ibus.Object): - def _load_engine (self, _file): - f = file (_file) + def _load_engine(self, _file): + f = file(_file) name = None lang = "other" icon = "" @@ -152,10 +152,10 @@ class Register (ibus.Object): line = 0 for l in f: line += 1 - l = l.strip () - if l.startswith ("#"): + l = l.strip() + if l.startswith("#"): continue - n, v = l.split ("=") + n, v = l.split("=") if n == "Name": name = v elif n == "Lang": @@ -169,19 +169,19 @@ class Register (ibus.Object): elif n == "Exec": _exec = v else: - raise Exception ("%s:%d\nUnknown value name = %s" % (_file, line, n)) + raise Exception("%s:%d\nUnknown value name = %s" % (_file, line, n)) if name == None: - raise Exception ("%s: no name" % _file) + raise Exception("%s: no name" % _file) if _exec == None: - raise Exception ("%s: no exec" % _file) + raise Exception("%s: no exec" % _file) - return Engine (name, lang, icon, author, credits, _exec) + return Engine(name, lang, icon, author, credits, _exec) if __name__ == "__main__": import time - reg = Register () - reg.start_engine ("zh", "py") - time.sleep (3) - reg.stop_engine ("zh", "py") + reg = Register() + reg.start_engine("zh", "py") + time.sleep(3) + reg.stop_engine("zh", "py") |
