GpgFrontend Project A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.

Public Member Functions | Private Attributes | List of all members
GpgFrontend::GpgCommandExecutor Class Reference

Extra commands related to GPG. More...

`#include <GpgCommandExecutor.h>`

Inheritance diagram for GpgFrontend::GpgCommandExecutor:
Collaboration diagram for GpgFrontend::GpgCommandExecutor:

## Public Member Functions
| GpgCommandExecutor (int channel=SingletonFunctionObject::GetDefaultChannel())
| Construct a new Gpg Command Executor object. More...
void | Execute (std::string cmd, std::vector< std::string > arguments, std::function< void(int, std::string, std::string)> callback=[](int, std::string, std::string) {}, std::function< void(QProcess *)> interact_func=[](QProcess *) {})
| Excuting a command. More...
void | ExecuteConcurrently (std::string cmd, std::vector< std::string > arguments, std::function< void(int, std::string, std::string)> callback, std::function< void(QProcess *)> interact_func=[](QProcess *) {})
Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgCommandExecutor >
| SingletonFunctionObject (const SingletonFunctionObject< GpgCommandExecutor > &)=delete
| prohibit copy
| SingletonFunctionObject (GpgCommandExecutor &&)=delete
| Construct a new Singleton Function Object object.
| SingletonFunctionObject (const GpgCommandExecutor &)=delete
| Construct a new Singleton Function Object object.
SingletonFunctionObject & | operator= (const SingletonFunctionObject< GpgCommandExecutor > &)=delete
| prohibit copy More...
void | operator= (const GpgCommandExecutor &)=delete
int | GetChannel () const
| Get the Channel object. More...
Public Member Functions inherited from GpgFrontend::ChannelObject
| ChannelObject () noexcept
| Construct a new Default Channel Object object.
| ChannelObject (int channel)
| Construct a new Channel Object object. More...
int | GetChannel () const
| Get the Channel object. More...
void | SetChannel (int channel)
| Set the Channel object. More...

## Private Attributes
GpgContext & | ctx_
| Corresponding context. More...

## Additional Inherited Members
Static Public Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgCommandExecutor >
static GpgCommandExecutor & | GetInstance (int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
| Get the Instance object. More...
static GpgCommandExecutor & | CreateInstance (int channel, std::function< std::unique_ptr< ChannelObject >(void)> factory)
| Create a Instance object. More...
static void | ReleaseChannel (int channel)
static int | GetDefaultChannel ()
| Get the Default Channel object. More...
static std::vector< int > | GetAllChannelId ()
| Get all the channel ids. More...
Static Public Member Functions inherited from GpgFrontend::ChannelObject
static int | GetDefaultChannel ()
| Get the Default Channel object. More...
Protected Member Functions inherited from GpgFrontend::SingletonFunctionObject< GpgCommandExecutor >
| SingletonFunctionObject ()=default
| Construct a new Singleton Function Object object.
| SingletonFunctionObject (int channel)
| Construct a new Singleton Function Object object. More...
virtual | ~SingletonFunctionObject ()=default
| Destroy the Singleton Function Object object.

## Detailed Description

Extra commands related to GPG.

## Constructor & Destructor Documentation

## ◆ GpgCommandExecutor()

GpgFrontend::GpgCommandExecutor::GpgCommandExecutor | ( | int | channel = `SingletonFunctionObject::GetDefaultChannel()` | ) |
| explicit

Construct a new Gpg Command Executor object.

Parameters

  channel | Corresponding context

Copyright (C) 2021 Saturneric

This file is part of GpgFrontend.

GpgFrontend is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

GpgFrontend is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with GpgFrontend. If not, see https://www.gnu.org/licenses/.

The initial version of the source code is inherited from the gpg4usb project, which is under GPL-3.0-or-later.

All the source code of GpgFrontend was modified and released by Saturnericeric@.nosp@m.bktu.nosp@m.s.com starting on May 12, 2021.

SPDX-License-Identifier: GPL-3.0-or-later

## Member Function Documentation

## ◆ Execute()

void GpgFrontend::GpgCommandExecutor::Execute | ( | std::string | cmd,
|  | std::vector< std::string > | arguments,
|  | std::function< void(int, std::string, std::string)> | callback = `[](int, std::string, std::string) {}`,
|  | std::function< void(QProcess *)> | interact_func = `[](QProcess *) {}`
| ) |  |

Excuting a command.

Parameters

  arguments | Command parameters
  interact_func | Command answering function

References GpgFrontend::SingletonFunctionObject< TaskRunnerGetter >::GetInstance(), and GpgFrontend::Thread::Task::SignalTaskEnd().

Referenced by GpgFrontend::GpgAdvancedOperator::ClearGpgPasswordCache(), GpgFrontend::GpgContext::GetInfo(), GpgFrontend::GpgAdvancedOperator::ReloadGpgComponents(), GpgFrontend::GpgAdvancedOperator::ResetConfigures(), GpgFrontend::GpgAdvancedOperator::RestartGpgComponents(), GpgFrontend::GpgAdvancedOperator::StartDirmngr(), GpgFrontend::GpgAdvancedOperator::StartGpgAgent(), and GpgFrontend::GpgAdvancedOperator::StartKeyBoxd().

## Member Data Documentation

## ◆ ctx_

GpgContext& GpgFrontend::GpgCommandExecutor::ctx_
| private

Initial value:
= GpgContext::GetInstance(
SingletonFunctionObject::GetChannel())
GpgFrontend::SingletonFunctionObject< GpgContext >::GetInstance
static GpgContext & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:172
GpgFrontend::SingletonFunctionObject::GetChannel
int GetChannel() const
Get the Channel object.
Definition: GpgFunctionObject.h:258

Corresponding context.

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

- src/core/function/gpg/GpgCommandExecutor.h
- src/core/function/gpg/GpgCommandExecutor.cpp