Index: content/browser/geolocation/wifi_data_provider_mac.cc |
diff --git a/content/browser/geolocation/wifi_data_provider_mac.cc b/content/browser/geolocation/wifi_data_provider_mac.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..ac5a4845527f8e070b56e76d38f623714b10ba78 |
--- /dev/null |
+++ b/content/browser/geolocation/wifi_data_provider_mac.cc |
@@ -0,0 +1,46 @@ |
+// Copyright (c) 2010 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "content/browser/geolocation/wifi_data_provider_mac.h" |
+ |
+#include "content/browser/geolocation/wifi_data_provider_common.h" |
+#include "content/browser/geolocation/wifi_data_provider_manager.h" |
+ |
+namespace content { |
+namespace { |
+// The time periods, in milliseconds, between successive polls of the wifi data. |
+const int kDefaultPollingInterval = 120000; // 2 mins |
+const int kNoChangePollingInterval = 300000; // 5 mins |
+const int kTwoNoChangePollingInterval = 600000; // 10 mins |
+const int kNoWifiPollingIntervalMilliseconds = 20 * 1000; // 20s |
+} // namespace |
+ |
+// static |
+WifiDataProvider* WifiDataProviderManager::DefaultFactoryFunction() { |
+ return new WifiDataProviderMac(); |
+} |
+ |
+WifiDataProviderMac::WifiDataProviderMac() { |
+} |
+ |
+WifiDataProviderMac::~WifiDataProviderMac() { |
+} |
+ |
+WifiDataProviderMac::WlanApiInterface* WifiDataProviderMac::NewWlanApi() { |
+ WifiDataProviderMac::WlanApiInterface* core_wlan_api = NewCoreWlanApi(); |
+ if (core_wlan_api) |
+ return core_wlan_api; |
+ |
+ DVLOG(1) << "WifiDataProviderMac : failed to initialize any wlan api"; |
+ return NULL; |
+} |
+ |
+WifiPollingPolicy* WifiDataProviderMac::NewPollingPolicy() { |
+ return new GenericWifiPollingPolicy<kDefaultPollingInterval, |
+ kNoChangePollingInterval, |
+ kTwoNoChangePollingInterval, |
+ kNoWifiPollingIntervalMilliseconds>; |
+} |
+ |
+} // namespace content |