channelsabc.py
49 lines
| 935 B
| text/x-python
|
PythonLexer
MinRK
|
r10285 | """Abstract base classes for kernel client channels""" | ||
MinRK
|
r16570 | # Copyright (c) IPython Development Team. | ||
# Distributed under the terms of the Modified BSD License. | ||||
MinRK
|
r10285 | |||
import abc | ||||
Thomas Kluyver
|
r13359 | from IPython.utils.py3compat import with_metaclass | ||
MinRK
|
r10285 | |||
Thomas Kluyver
|
r13359 | class ChannelABC(with_metaclass(abc.ABCMeta, object)): | ||
MinRK
|
r10285 | """A base class for all channel ABCs.""" | ||
@abc.abstractmethod | ||||
def start(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def stop(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def is_alive(self): | ||||
pass | ||||
class HBChannelABC(ChannelABC): | ||||
"""HBChannel ABC. | ||||
The docstrings for this class can be found in the base implementation: | ||||
`IPython.kernel.channels.HBChannel` | ||||
""" | ||||
@abc.abstractproperty | ||||
def time_to_dead(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def pause(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def unpause(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def is_beating(self): | ||||
pass | ||||