Changeset 62374 for grass/trunk
- Timestamp:
- Oct 24, 2014, 2:50:38 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
grass/trunk/lib/python/pygrass/modules/interface/module.py
r62352 r62374 4 4 import sys 5 5 from multiprocessing import cpu_count 6 from functools import wraps 6 7 7 8 if sys.version_info[0] == 2: … … 20 21 from grass.pygrass.modules.interface.typedict import TypeDict 21 22 from grass.pygrass.modules.interface.read import GETFROMTAG, DOC 22 from grass.pygrass.messages import Messenger 23 from grass.pygrass.messages import get_msgr 24 25 26 def mdebug(level, msg='', extra=None): 27 """Debug decorators for class methods. 28 29 :param level: the debug level 30 :type level: int 31 :param msg: Debug message 32 :type msg: str 33 :param extra: Function that return a string 34 :type msg: func 35 """ 36 msgr = get_msgr() 37 38 def decorator(method): 39 40 @wraps(method) 41 def wrapper(self, *args, **kargs): 42 sargs = ', ' + ' , '.join([repr(a) for a in args]) if args else '' 43 skargs = (' , '.join(['%s=%r' % (k, v) for k, v in kargs.items()]) 44 if kargs else '') 45 opts = "%s%s%s" % (sargs, ',' if sargs and skargs else '', skargs) 46 dmsg = "%s.%s(self%s): %s %s" % (self.__class__.__name__, 47 method.__name__, 48 opts, msg, 49 extra(self, *args, **kargs) 50 if extra else '') 51 msgr.debug(level, dmsg) 52 return method(self, *args, **kargs) 53 return wrapper 54 return decorator 55 56 57 def _get_bash(self, *args, **kargs): 58 return self.get_bash() 59 23 60 24 61 class ParallelModuleQueue(object): … … 338 375 """ 339 376 def __init__(self, cmd, *args, **kargs): 340 self._msgr = Messenger()341 342 377 if isinstance(cmd, unicode): 343 378 self.name = str(cmd) … … 422 457 self.run() 423 458 return self 424 459 425 460 # 426 461 # check for extra kargs, set attribute and remove from dictionary … … 457 492 else: 458 493 raise ParameterError('%s is not a valid parameter.' % key) 459 460 #461 # print debug message462 #463 self._msgr.debug(1, "Module.__call__(): %s" % (self.get_bash()))464 494 465 495 # … … 559 589 return args 560 590 561 def run(self, node=None): 591 @mdebug(1, extra=_get_bash) 592 def run(self): 562 593 """Run the module 563 594
Note:
See TracChangeset
for help on using the changeset viewer.
