libzypp  17.23.3
ProxyInfo.cc
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
13 #include <iostream>
14 
15 #include "zypp/base/Logger.h"
16 
17 #include "zypp/media/ProxyInfo.h"
20 
21 using namespace std;
22 using namespace zypp::base;
23 
24 namespace zypp {
25  namespace media {
26 
27  shared_ptr<ProxyInfo::Impl> ProxyInfo::Impl::_nullimpl;
28 
29  ProxyInfo::ProxyInfo()
30 #ifdef WITH_LIBPROXY_SUPPORT
31  : _pimpl( new ProxyInfoLibproxy() )
32 #else
33  : _pimpl( new ProxyInfoSysconfig("proxy") )
34 #endif
35  {}
36 
37  ProxyInfo::ProxyInfo(ProxyInfo::ImplPtr pimpl_r)
38  : _pimpl(pimpl_r)
39  {}
40 
41  bool ProxyInfo::enabled() const
42  { return _pimpl->enabled(); }
43 
44  std::string ProxyInfo::proxy(const Url & url_r) const
45  { return _pimpl->proxy(url_r); }
46 
48  { return _pimpl->noProxy(); }
49 
51  { return _pimpl->noProxyBegin(); }
52 
54  { return _pimpl->noProxyEnd(); }
55 
56  bool ProxyInfo::useProxyFor( const Url & url_r ) const
57  { return _pimpl->useProxyFor( url_r ); }
58 
59  } // namespace media
60 } // namespace zypp
zypp::media::ProxyInfo::Impl::noProxyBegin
virtual ProxyInfo::NoProxyIterator noProxyBegin() const =0
zypp::media::ProxyInfo::NoProxyList
std::list< std::string > NoProxyList
Definition: ProxyInfo.h:34
zypp::media::ProxyInfo::Impl::useProxyFor
bool useProxyFor(const Url &url_r) const
Return true if enabled and url_r does not match noProxy.
Definition: ProxyInfoImpl.h:48
zypp::media::ProxyInfo::NoProxyIterator
std::list< std::string >::const_iterator NoProxyIterator
Definition: ProxyInfo.h:35
ProxyInfo.h
zypp::media::ProxyInfo::Impl::noProxy
virtual ProxyInfo::NoProxyList noProxy() const =0
zypp::media::ProxyInfo::_pimpl
RW_pointer< Impl > _pimpl
Pointer to implementation.
Definition: ProxyInfo.h:57
zypp::media::ProxyInfo::enabled
bool enabled() const
Definition: ProxyInfo.cc:41
zypp::media::ProxyInfo::proxy
std::string proxy(const Url &url) const
Definition: ProxyInfo.cc:44
zypp::media::ProxyInfoLibproxy
Definition: ProxyInfoLibproxy.h:28
zypp::media::ProxyInfo::noProxy
NoProxyList noProxy() const
Definition: ProxyInfo.cc:47
Logger.h
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
zypp::media::ProxyInfo::noProxyEnd
NoProxyIterator noProxyEnd() const
Definition: ProxyInfo.cc:53
zypp::media::ProxyInfoSysconfig
Definition: ProxyInfoSysconfig.h:27
std
Definition: Arch.h:347
zypp::media::ProxyInfo::Impl::enabled
virtual bool enabled() const =0
zypp::media::ProxyInfo::useProxyFor
bool useProxyFor(const Url &url_r) const
Return true if enabled and url_r does not match noProxy.
Definition: ProxyInfo.cc:56
ProxyInfoImpl.h
zypp::base
Definition: DrunkenBishop.cc:24
zypp::media::ProxyInfo::Impl::proxy
virtual std::string proxy(const Url &url_r) const =0
ProxyInfos.h
zypp::media::ProxyInfo::Impl::noProxyEnd
virtual ProxyInfo::NoProxyIterator noProxyEnd() const =0
zypp::media::ProxyInfo::ImplPtr
shared_ptr< Impl > ImplPtr
Definition: ProxyInfo.h:38
zypp::media::ProxyInfo::noProxyBegin
NoProxyIterator noProxyBegin() const
Definition: ProxyInfo.cc:50
zypp::Url
Url manipulation class.
Definition: Url.h:87