1// Copyright (c) 2010 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef NET_PROXY_PROXY_CONFIG_SERVICE_ANDROID_H_
6#define NET_PROXY_PROXY_CONFIG_SERVICE_ANDROID_H_
7#pragma once
8
9#include "net/base/net_export.h"
10#include "net/proxy/proxy_config_service.h"
11
12#include <string>
13
14#include "base/observer_list.h"
15
16namespace net {
17
18class NET_EXPORT ProxyConfigServiceAndroid : public ProxyConfigService {
19 public:
20  // ProxyConfigService implementation:
21  virtual void AddObserver(Observer* observer);
22  virtual void RemoveObserver(Observer* observer);
23  virtual ConfigAvailability GetLatestProxyConfig(ProxyConfig* config);
24  virtual void OnLazyPoll() {}
25
26  // For Android to update the proxy service config
27  void UpdateProxySettings(std::string& host, std::string& exclusionList);
28
29private:
30  ObserverList<Observer> observers_;
31  std::string m_proxy;
32};
33
34} // namespace net
35
36#endif // NET_PROXY_PROXY_CONFIG_SERVICE_ANDROID_H_
37