##// END OF EJS Templates
Removed Javascript from Markdown by adding display priority to def config.
Removed Javascript from Markdown by adding display priority to def config.

File last commit:

r15106:86f86fbc
r15529:58e05f96
Show More
managerabc.py
105 lines | 2.4 KiB | text/x-python | PythonLexer
Thomas Kluyver
Remove duplicated Channel ABC classes....
r15106 """Abstract base class for kernel managers."""
Brian Granger
Creating an ABC for kernel managers and channels.
r9121
#-----------------------------------------------------------------------------
# Copyright (C) 2013 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-----------------------------------------------------------------------------
import abc
Thomas Kluyver
Fixes for metaclass syntax
r13359 from IPython.utils.py3compat import with_metaclass
Brian Granger
Creating an ABC for kernel managers and channels.
r9121
Thomas Kluyver
Fixes for metaclass syntax
r13359 class KernelManagerABC(with_metaclass(abc.ABCMeta, object)):
Brian Granger
Docstring cleanup for kernelmanagers and channels....
r9128 """KernelManager ABC.
The docstrings for this class can be found in the base implementation:
MinRK
move zmq.KernelManagers into IPython.kernel
r9370 `IPython.kernel.kernelmanager.KernelManager`
Brian Granger
Docstring cleanup for kernelmanagers and channels....
r9128 """
Brian Granger
Creating an ABC for kernel managers and channels.
r9121
@abc.abstractproperty
def kernel(self):
pass
@abc.abstractproperty
def shell_channel_class(self):
pass
@abc.abstractproperty
def iopub_channel_class(self):
pass
@abc.abstractproperty
def hb_channel_class(self):
pass
@abc.abstractproperty
def stdin_channel_class(self):
pass
#--------------------------------------------------------------------------
Brian E. Granger
Final cleanup of kernelmanager...
r9151 # Channel management methods
Brian Granger
Creating an ABC for kernel managers and channels.
r9121 #--------------------------------------------------------------------------
@abc.abstractmethod
def start_channels(self, shell=True, iopub=True, stdin=True, hb=True):
pass
@abc.abstractmethod
def stop_channels(self):
pass
@abc.abstractproperty
def channels_running(self):
pass
@abc.abstractproperty
def shell_channel(self):
pass
@abc.abstractproperty
def iopub_channel(self):
pass
@abc.abstractproperty
def stdin_channel(self):
pass
@abc.abstractproperty
def hb_channel(self):
pass
#--------------------------------------------------------------------------
Brian E. Granger
Final cleanup of kernelmanager...
r9151 # Kernel management
Brian Granger
Creating an ABC for kernel managers and channels.
r9121 #--------------------------------------------------------------------------
@abc.abstractmethod
def start_kernel(self, **kw):
pass
@abc.abstractmethod
def shutdown_kernel(self, now=False, restart=False):
pass
@abc.abstractmethod
def restart_kernel(self, now=False, **kw):
pass
@abc.abstractproperty
def has_kernel(self):
pass
@abc.abstractmethod
def interrupt_kernel(self):
pass
@abc.abstractmethod
def signal_kernel(self, signum):
pass
Brian E. Granger
Made is_alive a method of KernelManager and MultiKernelManager....
r10275 @abc.abstractmethod
Brian Granger
Creating an ABC for kernel managers and channels.
r9121 def is_alive(self):
pass