summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/cros_settings_provider_proxy.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/chromeos/cros_settings_provider_proxy.h')
-rw-r--r--chrome/browser/chromeos/cros_settings_provider_proxy.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/chrome/browser/chromeos/cros_settings_provider_proxy.h b/chrome/browser/chromeos/cros_settings_provider_proxy.h
index ce6712f..1b1672b 100644
--- a/chrome/browser/chromeos/cros_settings_provider_proxy.h
+++ b/chrome/browser/chromeos/cros_settings_provider_proxy.h
@@ -16,17 +16,19 @@ namespace chromeos {
class CrosSettingsProviderProxy : public CrosSettingsProvider {
public:
CrosSettingsProviderProxy();
- virtual void Set(const std::string& path, Value* in_value);
+ // CrosSettingsProvider implementation.
virtual bool Get(const std::string& path, Value** out_value) const;
virtual bool HandlesSetting(const std::string& path);
private:
- void AppendPortIfValid(
- const ProxyConfigServiceImpl::ProxyConfig::ManualProxy& proxy,
- std::string* server_uri);
+ // CrosSettingsProvider implementation.
+ virtual void DoSet(const std::string& path, Value* value);
- bool FormServerUriIfValid(
- const ProxyConfigServiceImpl::ProxyConfig::ManualProxy& proxy,
+ chromeos::ProxyConfigServiceImpl* GetConfigService() const;
+
+ void AppendPortIfValid(const char* port_cache_key, std::string* server_uri);
+
+ void FormServerUriIfValid(const char* host_cache_key,
const std::string& port_num, std::string* server_uri);
Value* CreateServerHostValue(
@@ -35,6 +37,11 @@ class CrosSettingsProviderProxy : public CrosSettingsProvider {
Value* CreateServerPortValue(
const ProxyConfigServiceImpl::ProxyConfig::ManualProxy& proxy) const;
+ void SetCache(const std::string& key, const Value* value);
+
+ // A cache to keep whatever user typed.
+ DictionaryValue cache_;
+
DISALLOW_COPY_AND_ASSIGN(CrosSettingsProviderProxy);
};