libzypp 17.31.23
PluginExecutor.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
11#ifndef ZYPP_PLUGINEXECUTOR_H
12#define ZYPP_PLUGINEXECUTOR_H
13
14#include <iosfwd>
15
16#include <zypp/base/PtrTypes.h>
17#include <zypp/PluginScript.h>
18
20namespace zypp
21{
42 {
43 friend std::ostream & operator<<( std::ostream & str, const PluginExecutor & obj );
44 friend bool operator==( const PluginExecutor & lhs, const PluginExecutor & rhs );
45
46 public:
49
52
53 public:
55 explicit operator bool() const
56 { return !empty(); }
57
59 bool empty() const;
60
62 size_t size() const;
63
64 public:
71 void load( const Pathname & path_r );
72
76 void send( const PluginFrame & frame_r );
77
78 public:
79 class Impl;
80 private:
82 };
83
85 std::ostream & operator<<( std::ostream & str, const PluginExecutor & obj );
86
88 inline bool operator==( const PluginExecutor & lhs, const PluginExecutor & rhs )
89 { return ( lhs._pimpl == rhs._pimpl ); }
90
92 inline bool operator!=( const PluginExecutor & lhs, const PluginExecutor & rhs )
93 { return( ! operator==( lhs, rhs ) ); }
94
95} // namespace zypp
97#endif // ZYPP_PLUGINEXECUTOR_H
RepoManager implementation.
Parallel execution of stateful PluginScripts.
RW_pointer< Impl > _pimpl
Implementation class.
bool operator!=(const PluginExecutor &lhs, const PluginExecutor &rhs)
Comparison based on reference.
friend std::ostream & operator<<(std::ostream &str, const PluginExecutor &obj)
void load(const Pathname &path_r)
Find and launch plugins sending PLUGINBEGIN.
size_t size() const
Number of open plugins.
PluginExecutor()
Default ctor: Empty plugin list.
void send(const PluginFrame &frame_r)
Send PluginFrame to all open plugins.
~PluginExecutor()
Dtor: Send PLUGINEND and close all plugins.
bool empty() const
Whether no plugins are waiting.
friend bool operator==(const PluginExecutor &lhs, const PluginExecutor &rhs)
Command frame for communication with PluginScript.
Definition: PluginFrame.h:41
String related utilities and Regular expression matching.
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:2
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
Definition: SerialNumber.cc:52
Wrapper for const correct access via Smart pointer types.
Definition: PtrTypes.h:286