libzypp 17.37.17
ZYppImpl.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef ZYPP_ZYPP_DETAIL_ZYPPIMPL_H
13#define ZYPP_ZYPP_DETAIL_ZYPPIMPL_H
14
15#include <iosfwd>
16
17#include <zypp/TmpPath.h>
18#include <zypp/Target.h>
19#include <zypp/Resolver.h>
20#include <zypp/KeyRing.h>
21#include <zypp/ZYppCommit.h>
22#include <zypp/ResTraits.h>
24#include <zypp/ManagedFile.h>
25
26using GPollFD = struct _GPollFD;
27
29namespace zypp
30{
32 namespace zypp_detail
33 {
34
36 //
37 // CLASS NAME : ZYppImpl
38 //
41 {
42 friend std::ostream & operator<<( std::ostream & str, const ZYppImpl & obj );
43
44 public:
46 ZYppImpl();
48 ~ZYppImpl();
49
50 public:
52 ResPool pool() const
53 { return ResPool::instance(); }
54
56 { return ResPool::instance().proxy(); }
57
59 KeyRing_Ptr keyRing() const
60 { return _keyring; }
61
62
63 Resolver_Ptr resolver() const
64 { return _resolver; }
65
66 public:
71 Target_Ptr target() const;
72
77 { return _target; }
78
83 void initializeTarget( const Pathname & root, bool doRebuild_r );
84
88 void finishTarget();
89
91 ZYppCommitResult commit( const ZYppCommitPolicy & policy_r );
92
94 void installSrcPackage( const SrcPackage_constPtr & srcPackage_r );
95
97 ManagedFile provideSrcPackage( const SrcPackage_constPtr & srcPackage_r );
98
99 public:
101 Pathname homePath() const;
102
104 Pathname tmpPath() const;
105
107 void setHomePath( const Pathname & path );
108
109 public:
113
114 public:
116 void changeTargetTo( const Target_Ptr& newtarget_r );
117
121 static void setShutdownSignal();
122
126 static void clearShutdownSignal();
127
128 private:
132 Resolver_Ptr _resolver;
133
134 KeyRing_Ptr _keyring;
139 };
140
141
143 std::ostream & operator<<( std::ostream & str, const ZYppImpl & obj );
144
156 int zypp_poll( std::vector<GPollFD> &fds, int timeout = -1 );
157
158
160 } // namespace zypp_detail
163} // namespace zypp
165#endif // ZYPP_ZYPP_DETAIL_ZYPPIMPL_H
struct _GPollFD GPollFD
Definition ZYppImpl.h:26
std::set< MountPoint > MountPointSet
ResPool::instance().proxy();.
Global ResObject pool.
Definition ResPool.h:62
static ResPool instance()
Singleton ctor.
Definition ResPool.cc:38
ResPoolProxy proxy() const
preliminary
Definition ResPool.cc:59
Options and policies for ZYpp::commit.
Result returned from ZYpp::commit.
DiskUsageCounter::MountPointSet getPartitions() const
Definition ZYppImpl.cc:156
ResPool pool() const
Definition ZYppImpl.h:52
Target_Ptr getTarget() const
Same as target but returns NULL if target is not initialized, instead of throwing.
Definition ZYppImpl.h:76
friend std::ostream & operator<<(std::ostream &str, const ZYppImpl &obj)
Definition ZYppImpl.cc:318
void setPartitions(const DiskUsageCounter::MountPointSet &mp)
Definition ZYppImpl.cc:150
Target_Ptr target() const
Definition ZYppImpl.cc:167
void setHomePath(const Pathname &path)
set the home, if you need to change it
Definition ZYppImpl.cc:280
ResPoolProxy poolProxy() const
Definition ZYppImpl.h:55
Resolver_Ptr resolver() const
Definition ZYppImpl.h:63
Pathname tmpPath() const
Get the path where zypp related plugins store tmp data.
Definition ZYppImpl.cc:283
ZYppCommitResult commit(const ZYppCommitPolicy &policy_r)
Commit changes and transactions.
Definition ZYppImpl.cc:211
static void setShutdownSignal()
Enable the shutdown signal for zypp_poll calls.
Definition ZYppImpl.cc:286
void installSrcPackage(const SrcPackage_constPtr &srcPackage_r)
Install a source package on the Target.
Definition ZYppImpl.cc:260
shared_ptr< DiskUsageCounter > _disk_usage
defined mount points, used for disk usage counting
Definition ZYppImpl.h:138
KeyRing_Ptr keyRing() const
Definition ZYppImpl.h:59
ManagedFile provideSrcPackage(const SrcPackage_constPtr &srcPackage_r)
Install a source package on the Target.
Definition ZYppImpl.cc:267
void changeTargetTo(const Target_Ptr &newtarget_r)
Hook for actions to trigger if the Target changes (initialize/finish)
Definition ZYppImpl.cc:174
Pathname homePath() const
Get the path where zypp related plugins store persistent data and caches.
Definition ZYppImpl.cc:277
DiskUsageCounter::MountPointSet diskUsage()
Definition ZYppImpl.cc:141
static void clearShutdownSignal()
Disable the shutdown signal for zypp_poll calls.
Definition ZYppImpl.cc:298
void initializeTarget(const Pathname &root, bool doRebuild_r)
Definition ZYppImpl.cc:183
String related utilities and Regular expression matching.
std::ostream & operator<<(std::ostream &str, const ZYppImpl &obj)
Definition ZYppImpl.cc:318
int zypp_poll(std::vector< GPollFD > &fds, int timeout)
Small wrapper around g_poll that additionally listens to the shutdown FD returned by ZYpp::shutdownSi...
Definition ZYppImpl.cc:323
Easy-to use interface to the ZYPP dependency resolver.
AutoDispose< const Pathname > ManagedFile
A Pathname plus associated cleanup code to be executed when path is no longer needed.
Definition ManagedFile.h:27