libzypp
12.16.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
RepoType.cc
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
9
10
#include <iostream>
11
#include "
zypp/base/NamedValue.h
"
12
#include "
zypp/repo/RepoException.h
"
13
#include "
RepoType.h
"
14
15
namespace
zypp
16
{
17
namespace
repo
18
{
20
namespace
21
{
22
static
NamedValue<RepoType::Type> & table()
23
{
24
static
NamedValue<RepoType::Type> _t;
25
if
( _t.empty() )
26
{
27
_t(
RepoType::RPMMD_e
) |
"rpm-md"
|
"rpmmd"
|
"repomd"
|
"yum"
|
"up2date"
;
28
_t(
RepoType::YAST2_e
) |
"yast2"
|
"yast"
|
"susetags"
;
29
_t(
RepoType::RPMPLAINDIR_e
) |
"plaindir"
;
30
_t(
RepoType::NONE_e
) |
"NONE"
|
"none"
;
31
}
32
return
_t;
33
}
34
}
// namespace
36
37
const
RepoType
RepoType::RPMMD
(
RepoType::RPMMD_e
);
38
const
RepoType
RepoType::YAST2
(
RepoType::YAST2_e
);
39
const
RepoType
RepoType::RPMPLAINDIR
(
RepoType::RPMPLAINDIR_e
);
40
const
RepoType
RepoType::NONE
(
RepoType::NONE_e
);
41
42
RepoType::RepoType
(
const
std::string & strval_r)
43
: _type(parse(strval_r))
44
{}
45
46
RepoType::Type
RepoType::parse
(
const
std::string & strval_r )
47
{
48
RepoType::Type
type;
49
if
( ! table().getValue(
str::toLower
( strval_r ), type ) )
50
{
51
ZYPP_THROW
(
RepoUnknownTypeException
(
"Unknown repository type '"
+ strval_r +
"'"
) );
52
}
53
return
type;
54
}
55
56
const
std::string &
RepoType::asString
()
const
57
{
58
return
table().getName(
_type
);
59
}
60
61
62
}
// ns repo
63
}
// ns zypp
64
65
// vim: set ts=2 sts=2 sw=2 et ai:
zypp
repo
RepoType.cc
Generated by
1.8.2