Module EDPluginExecProcess :: Class EDPluginExecProcess
[hide private]
[frames] | no frames]

Class EDPluginExecProcess

source code

        object --+                    
                 |                    
 EDObject.EDObject --+                
                     |                
   EDLogging.EDLogging --+            
                         |            
        object --+       |            
                 |       |            
threading._Verbose --+   |            
                     |   |            
      threading.Thread --+            
                         |            
         EDAction.EDAction --+        
                             |        
             EDPlugin.EDPlugin --+    
                                 |    
         EDPluginExec.EDPluginExec --+
                                     |
                                    EDPluginExecProcess
Known Subclasses:

The super class for all plugins that execute a process This class manages the process to be launched:

The ExecProcess plugin is required to have a configuration in order to be executed in a plugin execution test case.

Instance Methods [hide private]
 
__init__(self)
Initializes process related attributes described above
source code
 
process_locally(self, _edObject=None)
Sets the process up with the executable, command line and time out Launches the process, in case of error, an error message is added to the list, and the plugins fails
source code
 
process_on_oar(self, _edObject=None)
Special processing method for OAR.
source code
 
poll_oar(self) source code
 
process(self, _edObject=None) source code
 
kill(self) source code
 
configure(self)
Configures the plugin with executable from configuration file
source code
 
setExecutable(self, _strExecutable)
Sets the executable
source code
 
getExecutable(self)
Sets the executable
source code
 
setCommandline(self, _strCommandline)
Sets the command line
source code
 
getCommandline(self)
Returns the command line
source code
 
getPid(self) source code
 
getExecutionStatus(self)
Returns the string containing the execution status.
source code

Inherited from EDPluginExec.EDPluginExec: finallyProcess, preProcess

Inherited from EDPlugin.EDPlugin: ERROR, addErrorMessage, addExecutiveSummaryLine, addExecutiveSummarySeparator, addWarningMessage, checkDataOutput, checkImportantParameters, checkMandatoryParameters, checkParameters, compactPluginName, connectExportDataOutput, createBaseName, delDataInput, delDataOutput, error, execute, exportDataOutput, generateExecutiveSummary, getBaseDirectory, getBaseName, getConfig, getConfiguration, getDataInput, getDataOutput, getDefaultInputDataKey, getDefaultOutputDataKey, getDoubleConfigurationParameterValue, getErrorMessages, getExecutiveSummarySeparator, getIntegerConfigurationParameterValue, getListExecutiveSummaryLines, getListOfDataInputKeys, getListOfDataOutputKeys, getListOfErrorMessages, getListOfWarningMessages, getPluginName, getStringConfigurationParameterValue, getWarningMessages, getWorkingDirectory, getXSDataInputClass, hasDataInput, hasDataOutput, isRequiredToHaveConfiguration, setBaseDirectory, setBaseName, setConfig, setConfiguration, setDataInput, setDataOutput, setRequiredToHaveConfiguration, setUseWarningInsteadOfError, setWorkingDirectory, setWriteXMLInput, setWriteXMLInputOutput, setWriteXMLOutput, setXSDataInputClass, synchronize, tellFinished, verboseDebug, verboseScreenExecutiveSummary, writeDataInput, writeDataOutput

Inherited from EDAction.EDAction: abort, addExtraTime, connectFAILURE, connectFinallyProcess, connectPostProcess, connectPreProcess, connectProcess, connectSUCCESS, executeAction, executeActionSynchronous, executeKernel, executeSynchronous, getDefaultTimeOut, getLogTiming, getSlotFAILURE, getSlotSUCCESS, getTimeOut, hasTimedOut, isEnded, isFailure, isRunning, isStarted, isTimeOut, postProcess, run, setFailure, setLogTiming, setTimeOut

Inherited from EDLogging.EDLogging: ASSERT, DEBUG, WARNING, isVerboseDebug, log, screen, setAllLogLevels, setLogFileName, setLogFileOff, setLogLevel, setTestOff, setTestOn, setVerboseDebugOff, setVerboseDebugOn, setVerboseOff, setVerboseOn, unitTest, warning, writeErrorTrace

Inherited from EDObject.EDObject: getClassName, getId, getRunTime, getSemaphoreValue, getTimeEnd, getTimeInit, locked, setTimeEnd, setTimeInit, synchronizeOff, synchronizeOn

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__

Class Variables [hide private]
  CONF_EXEC_PROCESS_TIME_OUT = 'execProcessTimeOut'
  CONF_EXEC_PROCESS_EXECUTABLE = 'execProcessExecutable'

Inherited from EDPlugin.EDPlugin: CONF_BASE_DIR_LABEL, CONF_TIME_OUT, CONF_WORKING_DIR_LABEL, CONF_WRITE_XML_INPUT, CONF_WRITE_XML_INPUT_OUTPUT, CONF_WRITE_XML_OUTPUT

Inherited from EDLogging.EDLogging (private): _EDObject__iId_class

Properties [hide private]

Inherited from EDPlugin.EDPlugin: config, configuration, dataInput, dataOutput

Inherited from EDAction.EDAction: logTiming

Inherited from threading.Thread: daemon, ident, name

Inherited from threading.Thread (private): _block

Inherited from object: __class__

Method Details [hide private]

__init__(self)
(Constructor)

source code 

Initializes process related attributes described above

Overrides: object.__init__

process_on_oar(self, _edObject=None)

source code 

Special processing method for OAR. Since oarsub returns immediately we cannot rely on Popen.wait(). Instead we'll poll the cluster using the oarstat utility. In order to do that we'll setup a timer firing at regular intervals until we're done or the total time exceeds the timeout config parameter.

process(self, _edObject=None)

source code 
Overrides: EDAction.EDAction.process

configure(self)

source code 

Configures the plugin with executable from configuration file

Overrides: EDPlugin.EDPlugin.configure