libzypp
12.16.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
User data as transaction id
Todo List
Deprecated List
Modules
Namespaces
Classes
Files
File List
zypp
base
media
misc
parser
pool
repo
sat
solver
target
thread
ui
url
UrlBase.cc
UrlBase.h
UrlException.h
UrlUtils.cc
UrlUtils.h
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
UrlUtils.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
12
#ifndef ZYPP_URL_URLUTILS_H
13
#define ZYPP_URL_URLUTILS_H
14
15
#include "
zypp/url/UrlException.h
"
16
17
#include <string>
18
#include <vector>
19
#include <map>
20
22
#define URL_SAFE_CHARS ":/?#[]@!$&'()*+,;="
23
25
namespace
zypp
26
{
27
29
30
namespace
url
31
{
32
33
34
// ---------------------------------------------------------------
40
typedef
std::vector < std::string >
ParamVec
;
41
42
47
typedef
std::map < std::string, std::string >
ParamMap
;
48
49
52
typedef
enum
{
53
E_ENCODED
,
54
E_DECODED
55
}
EEncoding
;
56
57
58
// ---------------------------------------------------------------
84
std::string
85
encode
(
const
std::string &str,
const
std::string &safe =
""
,
86
EEncoding
eflag =
E_DECODED
);
87
88
89
// ---------------------------------------------------------------
105
std::string
106
decode
(
const
std::string &str,
bool
allowNUL =
false
);
107
108
109
// ---------------------------------------------------------------
119
std::string
120
encode_octet
(
const
unsigned
char
c);
121
122
123
// ---------------------------------------------------------------
142
int
143
decode_octet
(
const
char
*hex);
144
145
146
// ---------------------------------------------------------------
160
void
161
split
(
ParamVec
&pvec,
162
const
std::string &pstr,
163
const
std::string &psep);
164
165
166
// ---------------------------------------------------------------
194
void
195
split
(
ParamMap
&pmap,
196
const
std::string &pstr,
197
const
std::string &psep,
198
const
std::string &vsep,
199
EEncoding
eflag =
E_ENCODED
);
200
201
202
// ---------------------------------------------------------------
216
std::string
217
join
(
const
ParamVec
&pvec,
218
const
std::string &psep);
219
220
221
// ---------------------------------------------------------------
243
std::string
244
join
(
const
ParamMap
&pmap,
245
const
std::string &psep,
246
const
std::string &vsep,
247
const
std::string &safe);
248
249
251
}
// namespace url
253
255
}
// namespace zypp
257
258
#endif
/* ZYPP_URL_URLUTILS_H */
259
/*
260
** vim: set ts=2 sts=2 sw=2 ai et:
261
*/
zypp
url
UrlUtils.h
Generated by
1.8.2