libschauer  0.0.1
Qt based library to access the Docker HTTP API.
Properties | Public Member Functions | Signals | List of all members
Schauer::StartExecInstanceJob Class Reference

Start a previously set up exec instance. More...

#include <Schauer/StartExecInstanceJob>

Inheritance diagram for Schauer::StartExecInstanceJob:
Inheritance graph
[legend]

Properties

bool detach
 This property holds whether to detach from the command. More...
 
QString id
 This propery holds the ID of the execution instance to start. More...
 
bool tty
 This property holds whether to allocate a pseudo-TTY. More...
 
- Properties inherited from Schauer::Job
Schauer::AbstractConfiguration configuration
 Pointer to an object providing configuration data. More...
 
- Properties inherited from Schauer::SJob
Schauer::SJob::Capabilities capabilities
 Capabilities of this job. More...
 
int error
 Error code. More...
 
QString errorString
 Human-readable error message. More...
 
QString errorText
 Additional error text. More...
 
ulong percent
 Overall progress of the job. More...
 

Public Member Functions

 StartExecInstanceJob (QObject *parent=nullptr)
 Constructs a new StartExecInstanceJob object with the given parent. More...
 
 ~StartExecInstanceJob () override
 Destroys the StartExecInstanceJob object. More...
 
bool detach () const
 Getter function for the detach property. More...
 
QString id () const
 Getter function for the id property. More...
 
void setDetach (bool detach)
 Setter function for the detach property. More...
 
void setId (const QString &id)
 Setter function for the id property. More...
 
void setTty (bool tty)
 Setter function for the tty property. More...
 
void start () override
 Start an execution instance asynchronously. More...
 
bool tty () const
 Getter function for the tty property. More...
 
- Public Member Functions inherited from Schauer::Job
 ~Job () override
 Destroys the Job object. More...
 
AbstractConfigurationconfiguration () const
 Getter function for the configuraion property. More...
 
QString errorString () const override
 Returns a human readable and translated error string. More...
 
QJsonDocument replyData () const
 Returns the API reply data after successful request. More...
 
void setConfiguration (AbstractConfiguration *configuration)
 Setter function for the configuration property. More...
 
- Public Member Functions inherited from Schauer::SJob
 SJob (QObject *parent=nullptr)
 Stores a combination of Capability values. More...
 
 ~SJob () override
 Desconstructs the SJob obejct. More...
 
Capabilities capabilities () const
 Returns the capabilities of this job. More...
 
int error () const
 Returns the error code, if there has been an error. More...
 
QString errorText () const
 Returns the error text if there has been an error. More...
 
bool exec ()
 Executes the job synchronously. More...
 
bool isAutoDelete () const
 Returns true if this job automatically deletes itself once the job is finished. More...
 
bool isFinishedNotificationHidden () const
 
bool isSuspended () const
 Returns true if the job was suspended with the suspend() call. More...
 
unsigned long percent () const
 Returns the overall progress of this job. More...
 
Q_SCRIPTABLE qulonglong processedAmount (Unit unit) const
 Returns the processed amount of a given unit for this job. More...
 
void setAutoDelete (bool autodelete)
 Sets the auto-delete property of the job. More...
 
void setFinishedNotificationHidden (bool hide=true)
 
Q_SCRIPTABLE qulonglong totalAmount (Unit unit) const
 Returns the total amount of a given unit for this job. More...
 

Signals

void detachChanged (bool detach)
 Notifier signal for the detach property. More...
 
void idChanged (const QString &id)
 Notifier signal for the id property. More...
 
void ttyChanged (bool tty)
 Notifier signal for the tty property. More...
 
- Signals inherited from Schauer::Job
void configurationChanged (Schauer::AbstractConfiguration *configuration)
 Notifier signal for the configuration property. More...
 
void failed (int errorCode, const QString &errorString)
 Emitted when the API request has been failed. More...
 
void succeeded (const QJsonDocument &json)
 Emitted when the API request ha been successfully finished. More...
 
- Signals inherited from Schauer::SJob
void description (Schauer::SJob *job, const QString &title, const QPair< QString, QString > &field1=QPair< QString, QString >(), const QPair< QString, QString > &field2=QPair< QString, QString >())
 Emitted to display general description of this job. More...
 
void finished (Schauer::SJob *job)
 Emitted when the job is finished, in any case. More...
 
void infoMessage (Schauer::SJob *job, const QString &plain, const QString &rich=QString())
 Emitted to display state information about this job. More...
 
void percent (Schauer::SJob *job, unsigned long percent)
 Progress signal showing the overall progress of the job This is valid for any kind of job, and allows using a a progress bar very easily. More...
 
void percentChanged (Schauer::SJob *job, unsigned long percent)
 Progress signal showing the overall progress of the job This is valid for any kind of job, and allows using a a progress bar very easily. More...
 
void processedAmount (Schauer::SJob *job, SJob::Unit unit, qulonglong amount)
 Regularly emitted to show the progress of this job by giving the current amount. More...
 
void processedAmountChanged (Schauer::SJob *job, SJob::Unit unit, qulonglong amount)
 Regularly emitted to show the progress of this job by giving the current amount. More...
 
void processedSize (Schauer::SJob *job, qulonglong size)
 Regularly emitted to show the progress of this job (current data size in bytes for transfers, entries listed, etc.). More...
 
void result (Schauer::SJob *job)
 Emitted when the job is finished (except when killed with SJob::Quietly). More...
 
void resumed (Schauer::SJob *job)
 Emitted when the job is resumed. More...
 
void speed (Schauer::SJob *job, unsigned long speed)
 Emitted to display information about the speed of this job. More...
 
void suspended (Schauer::SJob *job)
 Emitted when the job is suspended. More...
 
void totalAmount (Schauer::SJob *job, SJob::Unit unit, qulonglong amount)
 Emitted when we know the amount the job will have to process. More...
 
void totalAmountChanged (Schauer::SJob *job, SJob::Unit unit, qulonglong amount)
 Emitted when we know the amount the job will have to process. More...
 
void totalSize (Schauer::SJob *job, qulonglong size)
 Emitted when we know the size of this job (data size in bytes for transfers, number of entries for listings, etc). More...
 
void warning (Schauer::SJob *job, const QString &plain, const QString &rich=QString())
 Emitted to display a warning about this job. More...
 

Additional Inherited Members

- Public Types inherited from Schauer::SJob
enum  { NoError = 0, KilledJobError = 1, UserDefinedError = 100 }
 Error codes. More...
 
enum  Capability { NoCapabilities = 0x0000, Killable = 0x0001, Suspendable = 0x0002 }
 Job capabilities. More...
 
enum  Unit { Bytes = 0, Files, Directories, Items }
 Describes the unit used in the methods that handle reporting the job progress info. More...
 
- Public Slots inherited from Schauer::SJob
bool kill (Schauer::SJob::KillVerbosity verbosity=Quietly)
 Aborts this job. More...
 
bool resume ()
 Resumes this job. More...
 
bool suspend ()
 Suspends this job. More...
 
- Protected Member Functions inherited from Schauer::Job
 Job (QObject *parent=nullptr)
 Constructs a new Job object with the given parent. More...
 
void sendRequest ()
 Performs basic checks, sets up and sends the request. More...
 
- Protected Member Functions inherited from Schauer::SJob
virtual bool doKill ()
 Aborts this job quietly. More...
 
virtual bool doResume ()
 Resumes this job. More...
 
virtual bool doSuspend ()
 Suspends this job. More...
 
void emitPercent (qulonglong processedAmount, qulonglong totalAmount)
 Utility function for inherited jobs. More...
 
void emitResult ()
 Utility function to emit the result signal, and suicide this job. More...
 
void emitSpeed (unsigned long speed)
 Utility function for inherited jobs. More...
 
bool isFinished () const
 Returns true if the job has been finished and has emitted the finished() signal. More...
 
void setCapabilities (Capabilities capabilities)
 Sets the capabilities for this job. More...
 
void setError (int errorCode)
 Sets the error code. More...
 
void setErrorText (const QString &errorText)
 Sets the error text. More...
 
void setPercent (unsigned long percentage)
 Sets the overall progress of the job. More...
 
void setProcessedAmount (Unit unit, qulonglong amount)
 Sets the processed size. More...
 
void setProgressUnit (Unit unit)
 Sets the unit that will be used internally to calculate the progress percentage. More...
 
void setTotalAmount (Unit unit, qulonglong amount)
 Sets the total size. More...
 

Detailed Description

Start a previously set up exec instance.

After creating an execution instance with CreateExecInstanceJob, use the returned Id to start the execution instance with this class.

Have a look at the description of the Job class to learn how to use Job classes.

Example
// performing instance creation and start in a synchronous way
auto createExec = new CreateExecInstanceJob();
createExec->setId(QStringLiteral("my-container"));
createExec->setCmd(QStringList({QStringLiteral("mkdir"), QStringLiteral("-p"), QStringLiteral("/my/new/directory")}));
createExec->exec();
const QString execId = createExec->replyData().object().value(QLatin1String("Id)).toString();
auto startExec = new StartExecInstanceJob();
startExec->setId(execId);
startExec->exec();
API route
/exec/{id}/start
API method
POST
Docker API Documentation
ExecStart

Property Documentation

◆ detach

bool StartExecInstanceJob::detach
readwrite

This property holds whether to detach from the command.

The default value is true.

Access functions
Notifier signal

◆ id

QString StartExecInstanceJob::id
readwrite

This propery holds the ID of the execution instance to start.

Get an execution instance ID by create a new execution instance with CreateExecInstanceJob.

Access functions
Notifier signal

◆ tty

bool StartExecInstanceJob::tty
readwrite

This property holds whether to allocate a pseudo-TTY.

The default value is false.

Access functions
Notifier signal

Constructor & Destructor Documentation

◆ StartExecInstanceJob()

StartExecInstanceJob::StartExecInstanceJob ( QObject parent = nullptr)
explicit

Constructs a new StartExecInstanceJob object with the given parent.

◆ ~StartExecInstanceJob()

StartExecInstanceJob::~StartExecInstanceJob ( )
overridedefault

Destroys the StartExecInstanceJob object.

Member Function Documentation

◆ detach()

bool Schauer::StartExecInstanceJob::detach ( ) const

Getter function for the detach property.

See also
setDetach(), detachChanged()

◆ detachChanged

void Schauer::StartExecInstanceJob::detachChanged ( bool  detach)
signal

Notifier signal for the detach property.

See also
detach(), setDetach()

◆ id()

QString Schauer::StartExecInstanceJob::id ( ) const

Getter function for the id property.

See also
setId(), idChanged()

◆ idChanged

void Schauer::StartExecInstanceJob::idChanged ( const QString id)
signal

Notifier signal for the id property.

See also
id(), setId()

◆ setDetach()

void StartExecInstanceJob::setDetach ( bool  detach)

Setter function for the detach property.

See also
detach(), detachChanged()

◆ setId()

void StartExecInstanceJob::setId ( const QString id)

Setter function for the id property.

See also
id(), idChanged()

◆ setTty()

void StartExecInstanceJob::setTty ( bool  tty)

Setter function for the tty property.

See also
tty(), ttyChanged()

◆ start()

void StartExecInstanceJob::start ( )
overridevirtual

Start an execution instance asynchronously.

When the job is finished, result() is emitted. To start an execution instance in a synchronous way, use exec().

Implements Schauer::SJob.

◆ tty()

bool Schauer::StartExecInstanceJob::tty ( ) const

Getter function for the tty property.

See also
setTty(), ttyChanged()

◆ ttyChanged

void Schauer::StartExecInstanceJob::ttyChanged ( bool  tty)
signal

Notifier signal for the tty property.

See also
tty(), setTty()

The documentation for this class was generated from the following files: