00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_MEDIA_PROXYINFO_PROXYINFOSYSCONFIG_H 00013 #define ZYPP_MEDIA_PROXYINFO_PROXYINFOSYSCONFIG_H 00014 00015 #include <string> 00016 #include <map> 00017 00018 #include "zypp/base/Sysconfig.h" 00019 #include "zypp/media/ProxyInfo.h" 00020 #include "zypp/media/proxyinfo/ProxyInfoImpl.h" 00021 00022 namespace zypp { 00023 namespace media { 00024 00025 00026 class ProxyInfoSysconfig : public ProxyInfo::Impl 00027 { 00028 public: 00029 ProxyInfoSysconfig(const Pathname & path); 00031 bool enabled() const 00032 { return _enabled; } 00034 std::string proxy(const std::string & protocol_r) const; 00036 ProxyInfo::NoProxyList noProxy() const 00037 { return _no_proxy; } 00039 virtual ProxyInfo::NoProxyIterator noProxyBegin() const; 00041 virtual ProxyInfo::NoProxyIterator noProxyEnd() const; 00042 private: 00043 bool _enabled; 00044 ProxyInfo::NoProxyList _no_proxy; 00045 std::map<std::string,std::string> _proxies; 00046 }; 00047 00049 00050 } // namespace media 00051 } // namespace zypp 00052 00053 #endif // ZYPP_MEDIA_PROXYINFO_PROXYINFOSYSCONFIG_H