libzypp
11.13.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
libzypp
Welcome to libzypp
Code Pitfalls - Frequently made mistakes
Code Snippets
Environment Variables
Testing for provided features.
Notes on revisions
Extending ZYpp: Plugins and Hooks
Services
Solver - Vendor protection
Writing and tunning testcases
Libzypp and threads
Todo List
Deprecated List
Modules
Namespaces
Classes
Files
File List
zypp
base
media
misc
parser
pool
repo
sat
solver
target
thread
ui
url
ws
zypp_detail
APIConfig.h
Arch.cc
Arch.h
AutoDispose.h
Bit.h
ByteCount.cc
ByteCount.h
Callback.h
Capabilities.cc
Capabilities.h
Capability.cc
Capability.h
CapMatch.cc
CapMatch.h
Changelog.cc
Changelog.h
CheckSum.cc
CheckSum.h
CountryCode.cc
CountryCode.h
Date.cc
Date.h
Dep.cc
Dep.h
Digest.cc
Digest.h
DiskUsage.cc
DiskUsage.h
DiskUsageCounter.cc
DiskUsageCounter.h
DownloadMode.cc
DownloadMode.h
Edition.cc
Edition.h
ExternalProgram.cc
ExternalProgram.h
Fetcher.cc
Fetcher.h
FileChecker.cc
FileChecker.h
Filter.h
Glob.cc
Glob.h
HistoryLog.cc
HistoryLog.h
HistoryLogData.cc
HistoryLogData.h
IdString.cc
IdString.h
IdStringType.h
InstanceId.cc
InstanceId.h
KeyContext.h
KeyRing.cc
KeyRing.h
KVMap.h
LanguageCode.cc
LanguageCode.h
Locale.cc
Locale.h
Locks.cc
Locks.h
ManagedFile.h
MediaProducts.cc
MediaProducts.h
MediaSetAccess.cc
MediaSetAccess.h
Misc.h
OnMediaLocation.cc
OnMediaLocation.h
Package.cc
Package.h
PackageKeyword.h
Patch.cc
Patch.h
PathInfo.cc
PathInfo.h
Pathname.cc
Pathname.h
Pattern.cc
Pattern.h
PluginFrame.cc
PluginFrame.h
PluginFrameException.cc
PluginFrameException.h
PluginScript.cc
PluginScript.h
PluginScriptException.cc
PluginScriptException.h
PoolItem.cc
PoolItem.h
PoolItemBest.cc
PoolItemBest.h
PoolQuery.cc
PoolQuery.h
PoolQueryResult.cc
PoolQueryResult.h
PoolQueryUtil.tcc
ProblemSolution.cc
ProblemSolution.h
ProblemTypes.h
Product.cc
Product.h
ProgressData.cc
ProgressData.h
ProvideFilePolicy.cc
ProvideFilePolicy.h
PublicKey.cc
PublicKey.h
Range.cc
Range.h
Rel.cc
Rel.h
RelCompare.h
RepoInfo.cc
RepoInfo.h
RepoManager.cc
RepoManager.h
Repository.cc
Repository.h
RepoStatus.cc
RepoStatus.h
ResFilters.h
ResKind.cc
ResKind.h
ResObject.cc
ResObject.h
ResObjects.h
Resolvable.cc
Resolvable.h
Resolver.cc
Resolver.h
ResolverProblem.cc
ResolverProblem.h
ResPool.cc
ResPool.h
ResPoolProxy.cc
ResPoolProxy.h
ResStatus.cc
ResStatus.h
ResTraits.h
ServiceInfo.cc
ServiceInfo.h
Signature.cc
Signature.h
SrcPackage.cc
SrcPackage.h
SysContent.cc
SysContent.h
Target.cc
Target.h
TmpPath.cc
TmpPath.h
TriBool.h
Url.cc
Url.h
Vendor.h
VendorAttr.cc
VendorAttr.h
VendorSupportOptions.cc
VendorSupportOptions.h
ZConfig.cc
ZConfig.h
ZYpp.cc
ZYpp.h
ZYppCallbacks.h
ZYppCommit.h
ZYppCommitPolicy.cc
ZYppCommitPolicy.h
ZYppCommitResult.cc
ZYppCommitResult.h
ZYppFactory.cc
ZYppFactory.h
File Members
Resolver.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
12
#ifndef ZYPP_RESOLVER_H
13
#define ZYPP_RESOLVER_H
14
15
#include <iosfwd>
16
#include <functional>
17
18
#include "
zypp/base/ReferenceCounted.h
"
19
#include "
zypp/base/PtrTypes.h
"
20
21
#include "
zypp/ResPool.h
"
22
#include "
zypp/solver/detail/Resolver.h
"
23
#include "
zypp/solver/detail/SolverQueueItem.h
"
24
#include "
zypp/ProblemTypes.h
"
25
27
namespace
zypp
28
{
29
30
namespace
sat
31
{
32
class
Transaction;
33
}
34
36
//
37
// CLASS NAME : Resolver
38
//
47
class
Resolver
:
public
base::ReferenceCounted
,
private
base::NonCopyable
48
{
49
public
:
50
52
Resolver
(
const
ResPool
& pool );
54
virtual
~Resolver
();
55
64
bool
verifySystem
();
65
66
81
bool
resolvePool
();
82
83
101
bool
resolveQueue
(
solver::detail::SolverQueueItemList
& queue );
102
103
/*
104
* Undo solver changes done in resolvePool()
105
* Throwing away all ignored dependencies.
106
*/
107
void
undo
();
108
109
/*
110
* Resets solver information and verify option.
111
*/
112
void
reset
();
113
114
128
bool
doUpgrade
();
129
139
void
doUpdate
( );
140
148
std::list<PoolItem>
problematicUpdateItems
()
const
;
149
155
ResolverProblemList
problems
();
156
157
162
void
applySolutions
(
const
ProblemSolutionList
& solutions );
163
167
sat::Transaction
getTransaction
();
168
174
void
setForceResolve
(
bool
force );
175
bool
forceResolve
()
const
;
176
181
void
setIgnoreAlreadyRecommended
(
bool
yesno_r );
182
bool
ignoreAlreadyRecommended
()
const
;
183
189
void
setOnlyRequires
(
bool
yesno_r );
190
void
resetOnlyRequires
();
// set back to default (described in zypp.conf)
191
bool
onlyRequires
()
const
;
192
198
void
setUpgradeMode
(
bool
yesno_r );
199
bool
upgradeMode
()
const
;
200
209
void
setAllowVendorChange
(
bool
yesno_r );
210
void
setDefaultAllowVendorChange
();
// set back to default (in zypp.conf)
211
bool
allowVendorChange
()
const
;
212
218
void
setSystemVerification
(
bool
yesno_r );
219
void
setDefaultSystemVerification
();
220
bool
systemVerification
()
const
;
221
231
void
setSolveSrcPackages
(
bool
yesno_r );
232
void
setDefaultSolveSrcPackages
();
233
bool
solveSrcPackages
()
const
;
234
239
void
setCleandepsOnRemove
(
bool
yesno_r );
240
void
setDefaultCleandepsOnRemove
();
// set back to default (in zypp.conf)
241
bool
cleandepsOnRemove
()
const
;
242
254
void
addUpgradeRepo
(
Repository
repo_r );
255
259
bool
upgradingRepo
(
Repository
repo_r )
const
;
260
264
void
removeUpgradeRepo
(
Repository
repo_r );
265
269
void
removeUpgradeRepos
();
271
276
void
addRequire
(
const
Capability
& capability );
277
282
void
addConflict
(
const
Capability
& capability );
283
288
void
removeRequire
(
const
Capability
& capability );
289
294
void
removeConflict
(
const
Capability
& capability );
295
300
CapabilitySet
getRequire
()
const
;
301
306
CapabilitySet
getConflict
()
const
;
307
314
bool
createSolverTestcase
(
const
std::string & dumpPath =
"/var/log/YaST2/solverTestcase"
,
bool
runSolver =
true
);
315
330
solver::detail::ItemCapKindList
isInstalledBy
(
const
PoolItem
& item );
331
346
solver::detail::ItemCapKindList
installs
(
const
PoolItem
& item );
347
362
solver::detail::ItemCapKindList
satifiedByInstalled
(
const
PoolItem
& item );
363
364
379
solver::detail::ItemCapKindList
installedSatisfied
(
const
PoolItem
& item );
380
381
382
private
:
383
friend
std::ostream &
operator<<
( std::ostream & str,
const
Resolver
& obj );
384
385
typedef
solver::detail::Resolver
Impl
;
386
zypp::RW_pointer<Impl,rw_pointer::Intrusive<Impl>
>
_pimpl
;
387
};
389
391
std::ostream &
operator<<
( std::ostream & str,
const
Resolver
& obj );
392
394
}
// namespace zypp
396
#endif // ZYPP_RESOLVER_H
zypp
Resolver.h
Generated by
1.8.1