##// END OF EJS Templates
Remove unnecessary metaclass and allow registration of magic classes....
Remove unnecessary metaclass and allow registration of magic classes. This lets us register uninstantiated magic classes as well, making the init logic a bit cleaner in the main shell class.

File last commit:

r3603:600411fc
r6927:580a081f
Show More
log.py
23 lines | 687 B | text/x-python | PythonLexer
import logging
from logging import INFO, DEBUG, WARN, ERROR, FATAL
import zmq
from zmq.log.handlers import PUBHandler
class EnginePUBHandler(PUBHandler):
"""A simple PUBHandler subclass that sets root_topic"""
engine=None
def __init__(self, engine, *args, **kwargs):
PUBHandler.__init__(self,*args, **kwargs)
self.engine = engine
@property
def root_topic(self):
"""this is a property, in case the handler is created
before the engine gets registered with an id"""
if isinstance(getattr(self.engine, 'id', None), int):
return "engine.%i"%self.engine.id
else:
return "engine"