libzypp: zypp/media/UrlResolverPlugin.h Source File

libzypp 17.38.14

UrlResolverPlugin.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef ZYPP_MEDIA_URLRESOLVERPLUGIN_H
13#define ZYPP_MEDIA_URLRESOLVERPLUGIN_H
14
15#include <iosfwd>
16#include <map>
17#include <string>
18
19#include <zypp-core/Globals.h>
20#include <zypp-core/base/PtrTypes.h>
21#include <zypp-core/Url.h>
22#include <zypp/PathInfo.h>
24namespace zypp
25{
27 namespace media
28 {
29
30 // openSUSE/libzypp#560: Keep it public while foreign test depend on it.
31 class ZYPP_API UrlResolverPlugin
32 {
33 friend std::ostream & operator<<( std::ostream & str, const UrlResolverPlugin & obj );
34
35 public:
36
37 struct Impl;
38
39 using HeaderList = std::multimap<std::string, std::string>;
40
48 static Url resolveUrl(const Url &url, HeaderList &headers);
49
50 public:
52 ~UrlResolverPlugin();
53
54 private:
55
57 UrlResolverPlugin();
58
60 RW_pointer<Impl> _pimpl;
61 };
62
63
65 std::ostream & operator<<( std::ostream & str, const UrlResolverPlugin & obj );
66
68 } // namespace media
71} // namespace zypp
73#endif // ZYPP_MEDIA_URLRESOLVERPLUGIN_H
Globals.h
Provides API related macros.
PtrTypes.h
Url.h
zypp::Url
Url manipulation class.
Definition Url.h:93
zypp::media::UrlResolverPlugin
Definition UrlResolverPlugin.h:32
zypp::media::UrlResolverPlugin::_pimpl
RW_pointer< Impl > _pimpl
Pointer to implementation.
Definition UrlResolverPlugin.h:60
zypp::media::UrlResolverPlugin::UrlResolverPlugin
UrlResolverPlugin()
Default ctor.
zypp::media::UrlResolverPlugin::HeaderList
std::multimap< std::string, std::string > HeaderList
Definition UrlResolverPlugin.h:39
zypp::media::UrlResolverPlugin::resolveUrl
static Url resolveUrl(const Url &url, HeaderList &headers)
Resolves an url using the installed plugins If no plugin is found the url is resolved as its current ...
Definition UrlResolverPlugin.cc:36
zypp::media::UrlResolverPlugin::operator<<
friend std::ostream & operator<<(std::ostream &str, const UrlResolverPlugin &obj)
relates: UrlResolverPlugin Stream output
Definition UrlResolverPlugin.cc:92
str
String related utilities and Regular expression matching.
zypp::media
Definition MediaNetworkRequestExecutor.h:22
zypp::media::operator<<
std::ostream & operator<<(std::ostream &str, const MediaHandler &obj)
Definition MediaHandler.cc:1181
zypp::url
Url details namespace.
Definition UrlBase.cc:58
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition CodePitfalls.doc:2
zypp::ZYPP_API
const Arch Arch_empty ZYPP_API
relates: Arch This is an empty Arch represented by an empty string.
Definition Arch.h:173
zypp::RW_pointer
Wrapper for const correct access via Smart pointer types.
Definition PtrTypes.h:293
zypp::media::UrlResolverPlugin::Impl
UrlResolverPlugin implementation.
Definition UrlResolverPlugin.cc:30
PathInfo.h