Package src :: Module pyflow :: Class BaseTaskRunner
[hide private]
[frames] | no frames]

Class BaseTaskRunner

source code


Each individual command-task or sub workflow task is run on its own thread using a class inherited from BaseTaskRunner

Instance Methods [hide private]
 
__init__(self, runStatus, taskStr, sharedFlowLog, setRunstate)
This constructor should always be called with keyword arguments.
source code
 
run(self)
BaseTaskRunner's run() method ensures that we can capture exceptions which might occur in this thread.
source code
 
setRunstate(self, *args, **kw) source code
 
setInitialRunstate(self) source code
 
flowLog(self, msg, logState) source code
 
infoLog(self, msg) source code
 
warningLog(self, msg) source code
 
errorLog(self, msg) source code

Inherited from StoppableThread: stop, stopped

Inherited from threading.Thread: __repr__, getName, isAlive, isDaemon, is_alive, join, setDaemon, setName, start

Inherited from threading.Thread (private): _reset_internal_locks, _set_daemon, _set_ident

Inherited from threading._Verbose (private): _note

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __str__, __subclasshook__

Static Methods [hide private]

Inherited from StoppableThread: stopAll

Class Variables [hide private]

Inherited from StoppableThread (private): _stopAll

Properties [hide private]

Inherited from threading.Thread: daemon, ident, name

Inherited from threading.Thread (private): _block

Inherited from object: __class__

Method Details [hide private]

__init__(self, runStatus, taskStr, sharedFlowLog, setRunstate)
(Constructor)

source code 

This constructor should always be called with keyword arguments. Arguments are:

*group* should be None; reserved for future extension when a ThreadGroup class is implemented.

*target* is the callable object to be invoked by the run() method. Defaults to None, meaning nothing is called.

*name* is the thread name. By default, a unique name is constructed of the form "Thread-N" where N is a small decimal number.

*args* is the argument tuple for the target invocation. Defaults to ().

*kwargs* is a dictionary of keyword arguments for the target invocation. Defaults to {}.

If a subclass overrides the constructor, it must make sure to invoke the base class constructor (Thread.__init__()) before doing anything else to the thread.

Overrides: object.__init__
(inherited documentation)

run(self)

source code 

BaseTaskRunner's run() method ensures that we can capture exceptions which might occur in this thread. Do not override this method -- instead define the core logic for the task run operation in '_run()'

Note that for sub-workflow tasks we're interpreting raw client python code on this thread, so exceptions are *very likely* here -- this is not a corner case.

Overrides: threading.Thread.run