Workspace 6.21.5
Signals | Public Member Functions | Protected Member Functions | List of all members
SchedulerRequest Class Reference

Handles the scheduling and lifetime management of a scheduler request. The scheduling of a request can involve either running the request locally or distributing the execution of the request to other remotely hosted schedulers. An instance of this class is created by the scheduler to handle the scheduling of a single request, to observe and process its events (received either locally or via network messages) and to collect and store data related to executing request as it works its way through the system.

#include <Workspace/DataExecution/Execution/schedulerrequest.h>

Inherits QObject.

Signals

void signalAppendLog (const QByteArray logContent, const QString uuid)
 
void signalAppendSchedulerLog (const QByteArray logContent, const QString uuid)
 
void signalOperationUpdateEventList (const ExecutionTimekeeper::EventList eventList)
 

Public Member Functions

 SchedulerRequest (Workspace &, const QJsonDocument &=QJsonDocument())
 
 ~SchedulerRequest () override
 
void appendLog (QByteArray logContent)
 
void appendSchedulerLog (QByteArray logContent)
 
bool canRunRemotely () const
 
Q_SLOT void checkProgressFile (const QString &progressFile)
 
QPair< QString, QStringListgetCommandLine () const
 
QMap< QString, QString > getCommandLineEnvironment () const
 
int getCommandLineWallTimeInSeconds () const
 
QString getCommandLineWorkingDir () const
 
bool getDebugWithGui () const
 
bool getIsScheduled () const
 
bool getIsScheduledLocally () const
 
QMap< QString, bool > getLogMessageCategoryMap () const
 
bool getMustRun () const
 
QStringList getNotifyMailRecipients () const
 
bool getProfiling () const
 
const QJsonDocumentgetRequestSettings () const
 
SchedulerFeatures getRequiredSchedulerFeatures () const
 
QRunnable * getRunnable () const
 
AbstractSchedulergetScheduler () const
 
bool getUsedPluginsOnly () const
 
QString getUserFriendlyName () const
 
QString getUuid () const
 
WorkspacegetWorkspace ()
 
const WorkspacegetWorkspace () const
 
bool hasBeenScheduledOnto (AbstractScheduler &)
 
bool hasRequiredSchedulerFeatures () const
 
void initialise ()
 
void notifyHasAbortedUpdating (const AbortReason &reason)
 
void notifyHasFailedToBeScheduled (const QString &reason)
 
void notifyHasFinishedExecution ()
 
void notifyHasFinishedUpdating ()
 
void notifyHasStartedExecuting ()
 
void notifyHasStartedUpdating ()
 
void notifyOperationUpdateEventList (const ExecutionTimekeeper::EventList &eventList)
 
void notifyProgressEvent (int percentComplete)
 
void notifyWorkspaceLogMessage (const QString &logText)
 
void scheduledOnto (AbstractScheduler &)
 
void start ()
 
void stop ()
 

Protected Member Functions

void destroy ()
 
int getMaxRetryCount () const
 
int getRetryCount () const
 
void incrementRetryCount ()
 
void setIsScheduled (bool scheduled)
 

Constructor & Destructor Documentation

◆ SchedulerRequest()

SchedulerRequest ( Workspace workspace,
const QJsonDocument requestSettings = QJsonDocument() 
)

◆ ~SchedulerRequest()

~SchedulerRequest ( )
override

Member Function Documentation

◆ appendLog()

void appendLog ( QByteArray  logContent)
inline

◆ appendSchedulerLog()

void appendSchedulerLog ( QByteArray  logContent)
inline

◆ canRunRemotely()

bool canRunRemotely ( ) const

◆ checkProgressFile()

void checkProgressFile ( const QString &  progressFile)

◆ destroy()

void destroy ( )
protected

◆ getCommandLine()

QPair< QString, QStringList > getCommandLine ( ) const

◆ getCommandLineEnvironment()

QMap< QString, QString > getCommandLineEnvironment ( ) const

◆ getCommandLineWallTimeInSeconds()

int getCommandLineWallTimeInSeconds ( ) const

◆ getCommandLineWorkingDir()

QString getCommandLineWorkingDir ( ) const

◆ getDebugWithGui()

bool getDebugWithGui ( ) const

◆ getIsScheduled()

bool getIsScheduled ( ) const

◆ getIsScheduledLocally()

bool getIsScheduledLocally ( ) const

◆ getLogMessageCategoryMap()

QMap< QString, bool > getLogMessageCategoryMap ( ) const

◆ getMaxRetryCount()

int getMaxRetryCount ( ) const
protected

◆ getMustRun()

bool getMustRun ( ) const
Returns
True if the request must run irrespective of any concurrency limit.

◆ getNotifyMailRecipients()

QStringList getNotifyMailRecipients ( ) const

◆ getProfiling()

bool getProfiling ( ) const

◆ getRequestSettings()

const QJsonDocument & getRequestSettings ( ) const

◆ getRequiredSchedulerFeatures()

SchedulerFeatures getRequiredSchedulerFeatures ( ) const

◆ getRetryCount()

int getRetryCount ( ) const
protected

◆ getRunnable()

QRunnable * getRunnable ( ) const

◆ getScheduler()

AbstractScheduler * getScheduler ( ) const

◆ getUsedPluginsOnly()

bool getUsedPluginsOnly ( ) const

◆ getUserFriendlyName()

QString getUserFriendlyName ( ) const

◆ getUuid()

QString getUuid ( ) const

◆ getWorkspace() [1/2]

Workspace * getWorkspace ( )

◆ getWorkspace() [2/2]

const Workspace * getWorkspace ( ) const

◆ hasBeenScheduledOnto()

bool hasBeenScheduledOnto ( AbstractScheduler scheduler)

◆ hasRequiredSchedulerFeatures()

bool hasRequiredSchedulerFeatures ( ) const

◆ incrementRetryCount()

void incrementRetryCount ( )
protected

◆ initialise()

void initialise ( )

◆ notifyHasAbortedUpdating()

void notifyHasAbortedUpdating ( const AbortReason reason)

◆ notifyHasFailedToBeScheduled()

void notifyHasFailedToBeScheduled ( const QString &  reason)

◆ notifyHasFinishedExecution()

void notifyHasFinishedExecution ( )

◆ notifyHasFinishedUpdating()

void notifyHasFinishedUpdating ( )

◆ notifyHasStartedExecuting()

void notifyHasStartedExecuting ( )

◆ notifyHasStartedUpdating()

void notifyHasStartedUpdating ( )

◆ notifyOperationUpdateEventList()

void notifyOperationUpdateEventList ( const ExecutionTimekeeper::EventList eventList)

◆ notifyProgressEvent()

void notifyProgressEvent ( int  percentComplete)

◆ notifyWorkspaceLogMessage()

void notifyWorkspaceLogMessage ( const QString &  logText)

◆ scheduledOnto()

void scheduledOnto ( AbstractScheduler scheduler)

◆ setIsScheduled()

void setIsScheduled ( bool  scheduled)
protected

◆ signalAppendLog

void signalAppendLog ( const QByteArray  logContent,
const QString  uuid 
)
signal

◆ signalAppendSchedulerLog

void signalAppendSchedulerLog ( const QByteArray  logContent,
const QString  uuid 
)
signal

◆ signalOperationUpdateEventList

void signalOperationUpdateEventList ( const ExecutionTimekeeper::EventList  eventList)
signal

◆ start()

void start ( )

◆ stop()

void stop ( )