eric6.Utilities.BackgroundService
Module implementing a background service for the various checkers and other
python interpreter dependent functions.
Global Attributes
Classes
Functions
BackgroundService
Class implementing the main part of the background service.
Signals
- batchJobDone(function, language)
-
emitted to indicate the end of
a batch job (str, str)
- serviceNotAvailable(function, language, filename, message)
-
emitted to indicate the non-availability of a service function
(str, str, str, str)
Derived from
QTcpServer
Class Attributes
Class Methods
Methods
BackgroundService |
Constructor of the BackgroundService class. |
__processQueue |
Private method to take the next service request and send it to the client. |
__receive |
Private method to receive the response from the clients. |
__send |
Private method to send a job request to one of the clients. |
__startExternalClient |
Private method to start the background client as external process. |
enqueueRequest |
Public method implementing a queued processing of incomming events. |
on_disconnectSocket |
Private slot called when connection to a client is lost. |
on_newConnection |
Private slot for new incomming connections from the clients. |
preferencesOrProjectChanged |
Public slot to restart the built in languages. |
requestCancel |
Public method to ask a batch job to terminate. |
restartService |
Public method to restart a given lanuage. |
serviceConnect |
Public method to announce a new service to the background service/client. |
serviceDisconnect |
Public method to remove the service from the service list. |
shutdown |
Public method to cleanup the connections and processes when eric is shutting down. |
Static Methods
BackgroundService (Constructor)
BackgroundService()
Constructor of the BackgroundService class.
BackgroundService.__processQueue
__processQueue()
Private method to take the next service request and send it to the
client.
BackgroundService.__receive
__receive(lang)
Private method to receive the response from the clients.
- lang
-
language of the incomming connection (str)
- Raises RuntimeError:
-
raised if hashes don't match
BackgroundService.__send
__send(fx, lang, fn, data)
Private method to send a job request to one of the clients.
- fx
-
remote function name to execute (str)
- lang
-
language to connect to (str)
- fn
-
filename for identification (str)
- data
-
function argument(s) (any basic datatype)
BackgroundService.__startExternalClient
__startExternalClient(interpreter, port)
Private method to start the background client as external process.
- interpreter
-
path and name of the executable to start (string)
- port
-
socket port to which the interpreter should connect (int)
- Returns:
-
the process object (QProcess or None)
BackgroundService.enqueueRequest
enqueueRequest(fx, lang, fn, data)
Public method implementing a queued processing of incomming events.
Dublicate service requests updates an older request to avoid overrun or
starving of the services.
- fx
-
function name of the service (str)
- lang
-
language to connect to (str)
- fn
-
filename for identification (str)
- data
-
function argument(s) (any basic datatype(s))
BackgroundService.on_disconnectSocket
on_disconnectSocket(lang)
Private slot called when connection to a client is lost.
- lang
-
client language which connection is lost (str)
BackgroundService.on_newConnection
on_newConnection()
Private slot for new incomming connections from the clients.
BackgroundService.preferencesOrProjectChanged
preferencesOrProjectChanged()
Public slot to restart the built in languages.
BackgroundService.requestCancel
requestCancel(fx, lang)
Public method to ask a batch job to terminate.
- fx
-
function name of the service (str)
- lang
-
language to connect to (str)
BackgroundService.restartService
restartService(language, forceKill=False)
Public method to restart a given lanuage.
- language
-
to restart (str)
- forceKill=
-
flag to kill a running task (bool)
BackgroundService.serviceConnect
serviceConnect(fx, lang, modulepath, module, callback, onErrorCallback=None, onBatchDone=None)
Public method to announce a new service to the background
service/client.
- fx
-
function name of the service (str)
- lang
-
language of the new service (str)
- modulepath
-
full path to the module (str)
- module
-
name to import (str)
- callback
-
function called on service response (function)
- onErrorCallback
-
function called, if client isn't available
(function)
- onBatchDone
-
function called when a batch job is done (function)
BackgroundService.serviceDisconnect
serviceDisconnect(fx, lang)
Public method to remove the service from the service list.
- fx
-
function name of the service (function)
- lang
-
language of the service (str)
BackgroundService.shutdown
shutdown()
Public method to cleanup the connections and processes when eric is
shutting down.