libzypp
17.28.5
|
Interface to plugin scripts using a Stomp
inspired communication protocol.
More...
#include <PluginScript.h>
Classes | |
struct | Impl |
PluginScript implementation. More... | |
Public Types | |
typedef std::vector< std::string > | Arguments |
Commandline arguments passed to a script on open. More... | |
Public Member Functions | |
PluginScript () | |
Default ctor. More... | |
PluginScript (const Pathname &script_r) | |
Ctor taking script path and no arguments. More... | |
PluginScript (const Pathname &script_r, const Arguments &args_r) | |
Ctor taking script path and script arguments. More... | |
const Pathname & | script () const |
Return the script path if set. More... | |
const Arguments & | args () const |
Return the script arguments if set. More... | |
bool | isOpen () const |
Whether we are connected to a script. More... | |
pid_t | getPid () const |
Return a connected scripts pid or NotConnected. More... | |
int | lastReturn () const |
Remembers a scripts return value after close until next open. More... | |
const std::string & | lastExecError () const |
Remembers a scripts execError string after close until next open. More... | |
void | open () |
Setup connection and execute script. More... | |
void | open (const Pathname &script_r) |
void | open (const Pathname &script_r, const Arguments &args_r) |
int | close () |
Close any open connection. More... | |
void | send (const PluginFrame &frame_r) const |
Send a PluginFrame. More... | |
PluginFrame | receive () const |
Receive a PluginFrame. More... | |
Get/set local timeout settings. | |
long | sendTimeout () const |
Local default timeout (sec.) when sending data. More... | |
long | receiveTimeout () const |
Local default timeout (sec.) when receiving data. More... | |
void | sendTimeout (long newval_r) |
Set local default timeout (sec.) when sending data. More... | |
void | receiveTimeout (long newval_r) |
Set local default timeout (sec.) when receiving data. More... | |
void | timeout (long newval_r) |
Set local default timeout (sec.) (both: send and receive). More... | |
Static Public Member Functions | |
Get/set the global timeout settings. | |
Timeout when sending/receiving data to/from a plugin default to 30 sec. The value (in seconds) my be changed via the environment variables | |
static long | defaultSendTimeout () |
Global default timeout (sec.) when sending data. More... | |
static long | defaultReceiveTimeout () |
Global default timeout (sec.) when receiving data. More... | |
static void | defaultSendTimeout (long newval_r) |
Set global default timeout (sec.) when sending data. More... | |
static void | defaultReceiveTimeout (long newval_r) |
Set global default timeout (sec.) when receiving data. More... | |
static void | defaultTimeout (long newval_r) |
Set global default timeout (sec.) (both: send and receive). More... | |
Static Public Attributes | |
static const pid_t | NotConnected |
pid_t (-1) constant indicating no connection. More... | |
Private Attributes | |
RW_pointer< Impl > | _pimpl |
Pointer to implementation. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &str, const PluginScript &obj) |
Related Functions | |
(Note that these are not member functions.) | |
std::ostream & | operator<< (std::ostream &str, const PluginScript &obj) |
Interface to plugin scripts using a Stomp
inspired communication protocol.
Timeout when sending/receiving data to/from a plugin default to 30 sec. The value (in seconds) my be changed via the environment variables ZYPP_PLUGIN_SEND_TIMEOUT
, ZYPP_PLUGIN_RECEIVE_TIMEOUT
or ZYPP_PLUGIN_TIMEOUT
(both: send and receive).
Definition at line 62 of file PluginScript.h.
typedef std::vector<std::string> zypp::PluginScript::Arguments |
Commandline arguments passed to a script on open.
Definition at line 68 of file PluginScript.h.
zypp::PluginScript::PluginScript | ( | ) |
Default ctor.
Definition at line 462 of file PluginScript.cc.
zypp::PluginScript::PluginScript | ( | const Pathname & | script_r | ) |
Ctor taking script path and no arguments.
Definition at line 466 of file PluginScript.cc.
Ctor taking script path and script arguments.
Definition at line 470 of file PluginScript.cc.
|
static |
Global default timeout (sec.) when sending data.
Definition at line 438 of file PluginScript.cc.
|
static |
Global default timeout (sec.) when receiving data.
Definition at line 441 of file PluginScript.cc.
|
static |
Set global default timeout (sec.) when sending data.
Definition at line 444 of file PluginScript.cc.
|
static |
Set global default timeout (sec.) when receiving data.
Definition at line 447 of file PluginScript.cc.
|
inlinestatic |
Set global default timeout (sec.) (both: send and receive).
Definition at line 93 of file PluginScript.h.
const Pathname & zypp::PluginScript::script | ( | ) | const |
Return the script path if set.
Definition at line 474 of file PluginScript.cc.
const PluginScript::Arguments & zypp::PluginScript::args | ( | ) | const |
Return the script arguments if set.
Definition at line 477 of file PluginScript.cc.
bool zypp::PluginScript::isOpen | ( | ) | const |
Whether we are connected to a script.
Definition at line 480 of file PluginScript.cc.
pid_t zypp::PluginScript::getPid | ( | ) | const |
Return a connected scripts pid or NotConnected.
Definition at line 483 of file PluginScript.cc.
int zypp::PluginScript::lastReturn | ( | ) | const |
Remembers a scripts return value after close until next open.
Definition at line 486 of file PluginScript.cc.
const std::string & zypp::PluginScript::lastExecError | ( | ) | const |
Remembers a scripts execError string after close until next open.
Definition at line 489 of file PluginScript.cc.
long zypp::PluginScript::sendTimeout | ( | ) | const |
Local default timeout (sec.) when sending data.
Definition at line 450 of file PluginScript.cc.
long zypp::PluginScript::receiveTimeout | ( | ) | const |
Local default timeout (sec.) when receiving data.
Definition at line 453 of file PluginScript.cc.
void zypp::PluginScript::sendTimeout | ( | long | newval_r | ) |
Set local default timeout (sec.) when sending data.
Definition at line 456 of file PluginScript.cc.
void zypp::PluginScript::receiveTimeout | ( | long | newval_r | ) |
Set local default timeout (sec.) when receiving data.
Definition at line 459 of file PluginScript.cc.
|
inline |
Set local default timeout (sec.) (both: send and receive).
Definition at line 144 of file PluginScript.h.
void zypp::PluginScript::open | ( | ) |
Setup connection and execute script.
PluginScriptException | if already connected to a script |
PluginScriptException | if script does not exist or is not executable |
PluginScriptException | on error |
Definition at line 492 of file PluginScript.cc.
void zypp::PluginScript::open | ( | const Pathname & | script_r | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 495 of file PluginScript.cc.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 498 of file PluginScript.cc.
int zypp::PluginScript::close | ( | ) |
Close any open connection.
Definition at line 501 of file PluginScript.cc.
void zypp::PluginScript::send | ( | const PluginFrame & | frame_r | ) | const |
Send a PluginFrame.
PluginScriptNotConnected | |
PluginScriptSendTimeout | |
PluginScriptDiedUnexpectedly | (does not close) |
PluginScriptException | on error |
Definition at line 504 of file PluginScript.cc.
PluginFrame zypp::PluginScript::receive | ( | ) | const |
Receive a PluginFrame.
PluginScriptNotConnected | |
PluginScriptReceiveTimeout | |
PluginScriptDiedUnexpectedly | (does not close) |
PluginScriptException | on error |
Definition at line 507 of file PluginScript.cc.
|
friend |
Definition at line 512 of file PluginScript.cc.
|
related |
Stream output
Definition at line 512 of file PluginScript.cc.
|
static |
pid_t
(-1) constant indicating no connection.
Definition at line 71 of file PluginScript.h.
|
private |
Pointer to implementation.
Definition at line 185 of file PluginScript.h.