You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
798 B
29 lines
798 B
import warnings
|
|
|
|
from zmq.log.handlers import PUBHandler
|
|
|
|
warnings.warn(
|
|
"ipykernel.log is deprecated. It has moved to ipyparallel.engine.log",
|
|
DeprecationWarning,
|
|
stacklevel=2,
|
|
)
|
|
|
|
|
|
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 # type:ignore[misc]
|
|
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 # type:ignore[union-attr]
|
|
else:
|
|
return "engine"
|