1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/media/UrlResolverPlugin.h
12 #ifndef ZYPP_MEDIA_URLRESOLVERPLUGIN_H
13 #define ZYPP_MEDIA_URLRESOLVERPLUGIN_H
19 #include <zypp/base/PtrTypes.h>
21 #include <zypp/PathInfo.h>
23 ///////////////////////////////////////////////////////////////////
25 { /////////////////////////////////////////////////////////////////
26 ///////////////////////////////////////////////////////////////////
28 { /////////////////////////////////////////////////////////////////
33 class UrlResolverPlugin
35 friend std::ostream & operator<<( std::ostream & str, const UrlResolverPlugin & obj );
41 typedef std::multimap<std::string, std::string> HeaderList;
44 * Resolves an url using the installed plugins
45 * If no plugin is found the url is resolved as
48 * Custom headers are inserted in the provided header list
50 static Url resolveUrl(const Url &url, HeaderList &headers);
61 /** Pointer to implementation */
62 RW_pointer<Impl> _pimpl;
64 ///////////////////////////////////////////////////////////////////
66 /** \relates UrlResolverPlugin Stream output */
67 std::ostream & operator<<( std::ostream & str, const UrlResolverPlugin & obj );
69 /////////////////////////////////////////////////////////////////
71 ///////////////////////////////////////////////////////////////////
72 /////////////////////////////////////////////////////////////////
74 ///////////////////////////////////////////////////////////////////
75 #endif // ZYPP_MEDIA_URLRESOLVERPLUGIN_H