libzypp
11.13.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Helper.h
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2
/* Helper.h
3
*
4
* Static helpers
5
*
6
* Copyright (C) 2000-2002 Ximian, Inc.
7
* Copyright (C) 2005 SUSE Linux Products GmbH
8
*
9
* This program is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public License,
11
* version 2, as published by the Free Software Foundation.
12
*
13
* This program is distributed in the hope that it will be useful, but
14
* WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
* General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program; if not, write to the Free Software
20
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21
* 02111-1307, USA.
22
*/
23
24
#ifndef ZYPP_SOLVER_DETAIL_HELPER_H
25
#define ZYPP_SOLVER_DETAIL_HELPER_H
26
27
#include <iosfwd>
28
29
#include "
zypp/ResPool.h
"
30
#include "
zypp/PoolItem.h
"
31
#include "
zypp/Capabilities.h
"
32
#include "
zypp/base/String.h
"
33
#include "
zypp/solver/detail/Types.h
"
34
36
namespace
zypp
37
{
38
39
namespace
solver
40
{
41
42
namespace
detail
43
{
44
46
//
47
// CLASS NAME : Helper
48
49
class
Helper
{
50
public
:
51
52
// for name, find installed item which has same name
53
// does *NOT* check edition
54
// FIXME: should probably take provides/obsoletes into account for
55
// renamed upgrades
56
static
PoolItem
findInstalledByNameAndKind
(
const
ResPool
& pool,
const
std::string & name,
const
Resolvable::Kind
& kind);
57
58
// for name, find uninstalled item which has same name
59
static
PoolItem
findUninstalledByNameAndKind
(
const
ResPool
& pool,
const
std::string & name,
const
Resolvable::Kind
& kind);
60
61
// for item, find installed item which has same name -> calls findInstalledByNameAndKind()
62
// does *NOT* check edition
63
// FIXME: should probably take provides/obsoletes into account for
64
// renamed upgrades
65
static
PoolItem
findInstalledItem
(
const
ResPool
& pool,
PoolItem
item);
67
static
PoolItem
findInstalledItem
(
const
std::vector<PoolItem> & pool,
PoolItem
item);
68
69
// for item, find uninstalled item which has same name and higher edition
70
static
PoolItem
findUninstalledItem
(
const
ResPool
& pool,
PoolItem
item);
71
72
// for item, find uninstalled item which has same name and equal edition
73
static
PoolItem
findReinstallItem
(
const
ResPool
& pool,
PoolItem
item);
74
75
static
PoolItem
findUpdateItem
(
const
ResPool
& pool,
PoolItem
item);
77
static
PoolItem
findUpdateItem
(
const
std::vector<PoolItem> & pool,
PoolItem
item);
78
79
// for item, check if this is the 'best' uninstalled (best arch, best version) item
80
static
bool
isBestUninstalledItem
(
const
ResPool
& pool,
PoolItem
item);
81
82
// Human readable item
83
static
std::string
itemToString
(
PoolItem
item,
bool
shortVersion=
false
);
84
static
std::string
capToString
(
const
Capability
& capability);
85
86
friend
std::ostream&
operator<<
(std::ostream&,
const
PoolItemList
& itemlist);
87
88
};
89
91
};
// namespace detail
94
};
// namespace solver
97
};
// namespace zypp
99
100
#endif // ZYPP_SOLVER_DETAIL_HELPER_H
zypp
solver
detail
Helper.h
Generated by
1.8.1